问题标签 [resig]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
什么是选择器引擎?
我已经在很多地方看到了关于John Resig 的名为 Sizzle 的快速新选择器引擎的消息,但我不知道选择器引擎是什么,也没有任何文章解释它是什么。我知道 Resig 是 jQuery 的创造者,并且 Sizzle 是 Javascript 中的东西,但除此之外我不知道它是什么。那么,什么是选择器引擎?
谢谢!
jquery - 如何从我发现的脚本中制作一个 iframe 到 ajax 注入中?
我想知道如何更改这个附加的 iframe:
进入一个div。有没有办法改变这一点,以便我不附加 iframe,而是使用 ajax?我需要能够使用
一部分。我还是个新手。
如果您想查看我正在编辑的脚本,那是John Resig 不久前编写的GreyBox Redux灯箱脚本。到目前为止,我已经删除了相当数量的 jquery,因为我只需要它来显示图像,而不是网站。它也只有几个 kb。
谢谢。
这是我剥离后留下的jquery:
这是来自 html 文件的:
对不起,如果这很多:/
改进简单的 JavaScript 继承
John Resig(以 jQuery 闻名)提供了Simple JavaScript Inheritance的简洁实现。他的方法激发了我进一步改进事物的尝试。我重写了 Resig 的原始Class.extend
函数,使其具有以下优点:
性能——类定义、对象构造和基类方法调用期间的开销更少
灵活性——针对较新的兼容 ECMAScript 5 的浏览器(例如 Chrome)进行了优化,但为较旧的浏览器(例如 IE6)提供了等效的“shim”
兼容性——在严格模式下验证并提供更好的工具兼容性(例如 VSDoc/JSDoc 注释、Visual Studio IntelliSense 等)
简单——你不必成为“忍者”也能理解源代码(如果你失去了 ECMAScript 5 的特性,那就更简单了)
鲁棒性——通过更多“极端情况”单元测试(例如在 IE 中覆盖 toString)
因为它看起来好得令人难以置信,所以我想确保我的逻辑没有任何基本缺陷或错误,并看看是否有人可以提出改进建议或反驳代码。有了这个,我介绍了这个classify
功能:
constructor
除了构造函数名称( vs. init
)和基类方法调用的语法外,用法几乎与 Resig 相同。
这是我所有通过的 QUnit 测试:
有人认为我的方法与 John Resig 的原始方法有什么问题吗?欢迎提出建议和反馈!
注意:自从我最初发布此问题以来,上述代码已进行了重大修改。以上代表最新版本。要了解它是如何演变的,请查看修订历史。
关于prototype.js函数绑定代码的解释
来自:http ://ejohn.org/apps/learn/#2
谁能告诉我为什么需要第二次退货(在 fn.apply 之前)?
另外,谁能解释为什么 args.concat 是必要的?为什么不将其重写为:
代替
John Resigs 微模板与 JQuery 模板或其他?
我一直在我正在从事的项目中使用 John resigs 简洁的微模板 javascript。该项目拉下一个 JSOn 对象并吐出一个带有一堆输入字段的表格,如下所示:
这可以正常工作,但是在 IE 中它很慢并且会锁定浏览器一段时间。不过在 Chrome 中效果很好。
我环顾了网络,发现了一些关于各种模板引擎的文章,但是现在它们都变得有点老了,Jquery 模板有点新,所以我想知道,有没有人注意到它们之间的任何性能差异和resigs引擎?值得我换吗?还是我应该放弃基于 JS 的模板而只生成服务器端..?
Getting the class name to show up in the console when using Resig's Simple JavaScript Inhertiance
I'm using Resig's Simple JavaScript Inheritance to create my classes. The only thing I don't like about it so far is that when I log an object created with this library to the console, it's name is simply "Class". My question is whether there is a way to modify his code so that I get the actual class name in the console instead. Here's an example from Chrome's console:
I would really like that name "Class" to be the actual name of the class I've created, in the way it would if you did the following:
I believe I know the reason why this happen's with Resig's library: the actual constructor function is simply named "Class". Here's the code for his library:
You'll find the Class()
function about 2/3 of the way down. Does anyone know how to modify this code so that you get the actual name of the class in the console?
使用 John Resig 的“简单 JavaScript 继承”如何从方法中调用超级方法以及额外代码?
我决定尝试一下 JavaScript 天才 John Resig 的“简单 JavaScript 继承”,详见此博客页面:
http://ejohn.org/blog/simple-javascript-inheritance/
我很好奇如何使用调用超级方法的代码覆盖方法。换句话说,假设我从一个Person类开始:
我扩展该Person类以创建一个新类Worker:
init方法的两个版本中存在重复代码。无论我使用哪个类,都会执行以下两行:
看来我应该能够从Hero类的init方法中调用Person类的init方法,然后用占位属性抛出额外的代码行。
不过,我不能用 Resig 先生的代码做到这一点。以下不起作用:
一旦从Person调用来创建Worker类的extend方法看到 *this._super(arguments)* ,它就会用Person 的init替换整个Worker 的init ,留下一个未定义的占用属性。
有没有人对如何在不必修改 Resig 先生的代码的情况下解决这个问题有任何建议?我目前正在尝试不同的方法来实现“超级”的概念,但我无法让它与现有代码一起工作的事实一直困扰着我。:-)
更新:我意识到我在实现 Resig 先生的代码时犯了一个小错误,这就是我描述的方式的原因。@chuckj 也正确指出了Worker 的 init错误。
Resig 的 jQuery 1.7 及更高版本的 Live Search redux?
我最近发现 Resig 的Quicksilver Live Search 的 jQuery 重写并且喜欢它的工作原理......但我正在尝试更新它以使用新的 .on() 事件处理程序。然而,我的能力(或缺乏能力)让我失望。
我想我需要编辑“this.keyup(filter)...”,但我什么也没做。有任何想法吗?
更新:只是澄清一点。我想要更新脚本的想法是接受动态引入的列表项。只要它是一个静态列表,一切都可以正常工作,但是由于我引入了一个通过 ajax 调用创建的列表,所以它无法工作。我将模拟一个小提琴并很快将其链接到此处。与此同时,如果有人能帮助我,它会拯救我的隐藏。谢谢。
inherit.js 中的奇怪正则表达式(由 John Resig 撰写) - 为什么,什么以及如何?
我最近使用了John Resig的一个小实用程序库,称为inherit.js。我通常尝试理解我正在使用的库的核心部分,经过一番摸索,我终于理解了代码的难点(即他如何调用超类的相应方法)。
我没有得到的 1% 位与正则表达式有关
- 正则表达式 /xyz/ 针对函数进行测试。MSDN和MDN状态都
test
将字符串作为参数。没有提到一个功能,但由于控制台没有错误,我猜它必须飞,但它是如何工作的? - 下一个 WTF 是函数体是
xyz;
. 该函数无法执行,否则会导致“ReferenceError: xyz is not defined
”。正确的?那么它有什么作用呢? - 如果测试结果为真,则
fnTest
等于检查_super
单词边界的正则表达式,否则是匹配任何内容的正则表达式。双WTF;再次如何以及为什么。
稍后有一段相关的代码,正在使用这个正则表达式。
我想知道的一点是fnTest.test(prop[name])
。我了解所有其他测试,它们检查属性是否存在、是否是函数等,但不了解正则表达式测试的作用。任何人?
你可以用打电话或申请新的吗?
与如何使用调用或应用调用 javascript 构造函数有关?
但不一样,我正在尝试将 SO 答案应用于John Resig在未正确调用时强制构造函数。
目标代码行意味着每次构造函数更改时,都必须记住更改内部自调用参数。在过去的 3 天里,我已经对这个问题进行了 3 次项目旅行。
链接问题中的所有示例都在谈论传递constructor
,但constructor
在这种情况下是什么?它甚至还没有完成定义。
但到目前为止,所有尝试都没有通过测试,或者抛出 stackoverflow。
如何确保调用构造函数的结果instanceof User
即使在没有new
关键字的情况下也能正确响应,同时消除参数参数的重复?