Javascript与Jquery:初始化Modals。功能在JS中无法识别,但在jQuery中无法识别

Javascript与Jquery:初始化Modals。功能在JS中无法识别,但在jQuery中无法识别,javascript,jquery,Javascript,Jquery,我在这里使用一些情态动词!我有一个关于用javascript替换jquery的任意问题 我有一个函数,它在文档准备好后立即执行: ready: function() { $('.modal-trigger').leanModal(); // line 1 works document.querySelector(".modal-trigger").leanModal(); // this line does not work } 到目前为止,我的理解是jQuery可以用Java

我在这里使用一些情态动词!我有一个关于用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')

它是一个jQuery插件。它是在jQuery对象的原型链上定义的。它在原始DOM节点上不起作用

它的定义如下:

$.fn.leanModal = function () { ... };
这意味着它只适用于jQuery对象:
$(…)

要扩展:

$()
用作构造函数,它创建新对象。JavaScript中的对象从其原型链继承方法

$.fn
jQuery.prototype
的别名

您可以随时扩展任何对象的原型,继承该原型的所有对象都将获得新方法。通过将方法附加到对象的原型,可以扩展
节点
对象

Node.prototype.leanmodel=(Node.prototype.leanmodel | |函数(){
window.alert(节点的document.body实例);
});

document.body.leanModal()
leanModal
是一个jQuery插件,所以这并不奇怪?也许这会对您有所帮助;)jQuery是其他人用javascript编写的一组函数。。。它不是一种语言,它只是其他人编写的使生活更简单的普通代码。谢谢你,Oka,我不知道leanModal是一个jQuery函数。