Javascript 与 Jquery:初始化 Modals。JS 无法识别该函数,但 jQuery 可以识别
2015-06-15
390
我正在使用此处的一些模态框 http://materializecss.com/modals.html# !我有一个关于用 javascript 替换 jquery 的任意问题。
我有这个函数,它会在文档准备好后立即执行:
ready: function() {
$('.modal-trigger').leanModal(); // line 1 works
document.querySelector(".modal-trigger").leanModal(); // this line does not work
}
到目前为止,我的理解是 jQuery 可以用 Javascript 替换,但第二行不起作用,因为我收到以下错误:
Uncaught TypeError: document.querySelector(...).leanModal is not a function
我在 Javascript 中做错了什么吗?有没有更好的方法来替换
$('.modal-triger')
?
1个回答
这是一个jQuery插件。它在jQuery对象的原型链上定义。它不会在原始的DOM节点上使用。
它是在这样的地方定义的:
651148954
,这意味着它仅在jQuery对象上工作:
$(...)
。
展开:
$()
用作构造函数,它创建了新对象。 JavaScript中的对象从其原型链中继承方法。
$。fn
是
jQuery.prototype
。
的别名。
可以随时扩展任何对象的原型,并且所有继承原型的对象都将获得新方法。您可以通过将方法连接到其原型。
140515033
注意:某些人非常反对修改本机原型(数字数字) ,节点,函数,字符串等...)。只要您可以做到并且不覆盖已经存在的东西,就可以在现代浏览器*中这样做。
所有
对象从
object.protype
继承扩展某些原型会引起IE6/7/8中的问题。使用
object.defineProperty
是IE8中的一种稍安全的方法。
Oka
2015-06-15