草庐IT

strict-prototypes

全部标签

Javascript:哪些浏览器支持原型(prototype)继承?

目前我没有使用原型(prototype),因为我记得有一天我读了一篇文章,其中指出IE7及以下版本不支持原型(prototype),但我找不到那篇文章了,但是通过最好知道它是如何得到整体支持的。 最佳答案 JScript(微软对Javascript的解释)从2.0版开始就支持原型(prototype)属性(MSDN)。支持JScript2.0的第一个InternetExplorer版本是IE3(MSDN)。我会说你用IE7是安全的!编辑:也许您正在考虑修改宿主对象的原型(prototype),例如Node。这确实不受IE>=7的支持

Javascript:onScroll 事件(使用 Prototype)在 IE 上不起作用?

我正在尝试使用原型(prototype)以这种方式触发onScroll事件:Event.observe(document,'scroll',function(){alert('boo');});它在Firefox上完美运行,但在IE上没有任何反应。有谁知道为什么?如果有其他方法可以做到这一点?谢谢 最佳答案 尝试将其附加到窗口:Event.observe(window,'scroll',function(){alert('boo');});适用于IE、FF。老实说,我不知道为什么将它附加到document。

javascript - 如何使用 Prototype JavaScript 框架从数组创建哈希?

我有一个数组['red','green','blue']我想从这个数组创建一个新的哈希,结果应该是{'red':true,'green':true,'blue':true}使用Prototype实现该目标的最佳方法是什么? 最佳答案 只需遍历数组然后创建哈希:varobj={};for(vari=0,l=colors.length;i也可以从头创建一个新的Hash对象:varhash=newHash();for(vari=0,l=colors.length;i我建议看看documentation.

Javascript:替代 Array.prototype.find()?

当我在AngularJS中使用Chrome浏览器时,我遇到了.find()无法正常工作的问题。这是我最初的问题:AngularJS:Array.prototype.find()doesnotworkinChrome这条线失败了:console.log($scope.products_colors);//prints`[Object]0:Objectlength:1__proto__:Array[0]concat:functionconcat(){[nativecode]}constructor:functionArray(){[nativecode]}every:functioneve

javascript - 如何禁用原型(prototype)中的输入元素?

使用Prototype,据说Form.Element.disable禁用了整个表单。有没有办法一次只禁用一个输入元素?当我尝试这个时:$$('#signup.button')[0].disbled=false;##didn'twork已更新对不起大家。实际上它有效。但是我定义了一个禁用的样式在样式表中,但未应用样式。有什么解决方法吗? 最佳答案 您需要禁用方法。http://prototypejs.org/doc/latest/dom/Form/Element/disable/index.html例如:$(id).disable()

javascript - JavaScript .prototype 是如何工作的?

我不是很喜欢动态编程语言,但我已经编写了相当多的JavaScript代码。我从来没有真正理解这种基于原型(prototype)的编程,有人知道它是如何工作的吗?varobj=newObject();obj.prototype.test=function(){alert('Hello?');};varobj2=newobj();obj2.test();我记得前段时间我与人们进行了很多讨论(我不太确定我在做什么),但据我了解,没有类的概念。它只是一个对象,这些对象的实例是原始对象的克隆,对吧?但是JavaScript中这个“.prototype”属性的确切用途是什么?它与实例化对象有何关系

javascript - 我可以在 javascript 中获取原型(prototype)的所有实例吗?

获取一个对象的原型(prototype)很容易,但是有没有办法获取所有具有特定原型(prototype)的实例呢?像这样:varallAnimals=Animal.prototype.getInstances();可以编写自定义代码来跟踪实例化对象,但我对是否有任何内置方法感兴趣。 最佳答案 你可以试试这样的东西functionA(f){this.field=f;A.instances.push(this);}A.instances=[];所以之后varone=newA(10),two=newA('123');在A.instance

javascript - Firefox 和 chrome constructor.prototype 之间的行为差​​异?

经过多次试验,我发现__proto__或Object.getPrototypeOf()方法是遍历DOM对象中原型(prototype)链的正确方法。使用一系列constructor.prototype实际上并没有在两个浏览器中遍历原型(prototype)链。(虽然这是ECMA标准中定义的方式,constructor的prototype属性是你的原型(prototype)对象)。欢迎任何建议或评论...p1=document.getElementById("test");//divelement//PrototypeObjectofp1p2=element.constructor.pr

javascript - 覆盖对象原型(prototype)并不允许任何进一步的覆盖

我正在尝试编写一个库来拦截所有XMLHttpRequest调用并在最终发送请求之前做一些事情,方法是覆盖其原型(prototype),例如:varoriginal_open=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(){//myownoverridelogicherebeforerunningtheoriginalfunctionoriginal_open.apply(this,arguments);};问题是,我想保证当有人使用这个库时,网页上的任何其他代码都不可能重新覆盖这个效果。因为否

javascript - 如何在不弄乱全局命名空间的情况下在其他站点中注入(inject) Javascript(包括 Prototype.js)?

我目前正在做一个项目,该项目是一个使用Prototype库的大型站点,并且已经有大量的Javascript代码。我们现在正在研究一段代码,它将被“注入(inject)”到其他人的网站中(想象人们在他们的网站中添加标签),然后运行我们的代码并添加一堆DOM元素和他们网站的功能。这将有新的代码片段,并且还将重用我们在主站点上使用的大量代码。我遇到的问题是,仅仅添加一个将在人们的页面中包含Prototype的当然不是很酷。如果我们在已经使用任何框架的页面中这样做,我们肯定会搞砸一切。jQuery为我们提供了“重命名”$对象的选项,因此它可以很好地处理这种情况,但显然我们没有使用jQuery,