1)html元素是否有原型或者它只是javascript对象?换句话说,以这种方式可以以任何方式进行?关于javascript原型的几个问题
<div class="wrapper>
<img src=""mypicture.png />
<p>Click here</p>
</div>
.wrapper
{width:200px; height:50px;}
img
{width:100%;height:100%;}
p
{display:inline-block;height:100%;width:100%;}
然后在JS/jQuery的是这样的:
p.prototype = img;
$.on("click", "p", function(){
$(this).prototype.trigger("click");
});
2)说我使用的原型为特定插件我在写。我现在不是,但只是为了提供信息。比方说,在这个插件中,我使用了JS集成的Image()对象,无论出于何种原因,我决定为它分配一个不同的原型或者添加一些东西给原型。我将不得不“撤销”插件退出时所做的所有原型工作,以免干扰网站上可能使用Image()对象的任何其他内容。就像在其他OOP语言中收集垃圾一样。例如:
---插件启动
Image.prototype = foobar;
var image = new Image();
///
do code here
///
on("plugin close ", function(){
Image.prototype.release;
OR
Image.prototype = assign back to whatever it was originaly?
});
---插件结束
以下是我认为答案可能是: 1)NO!但希望是... 2)没有原型重置不是必须的,因为如果一个jQuery插件被包装在一个匿名函数内,那个代码实例只存在于一个实例中,并且它不影响全局Image()对象,只是Image()对象的本地实例。
我只是现在试图进入原型。我已经做了大量的研究工作,但是我没有看到使用它们的好处,但在我像傻子一样跳进它们之前,我想知道如何正确使用,以及我能做什么和不能做什么。
Thx again guys!
http://stackoverflow.com/questions/572897/how-does-javascript-prototype-work – Huangism