Jquery对象中的Javascript对象
试图理解这段代码。 //Jquery对象中的Javascript对象,javascript,jquery,Javascript,Jquery,试图理解这段代码。 // obj.dd.on('click', function(event){ $(this).toggleClass('active'); return false; }); //... $(function() { var dd = new DropDown( $('#dd') ); $(document).click(function() { // all dropdowns $('.wrapper-
obj.dd.on('click', function(event){
$(this).toggleClass('active');
return false;
});
//...
$(function() {
var dd = new DropDown( $('#dd') );
$(document).click(function() {
// all dropdowns
$('.wrapper-dropdown-1').removeClass('active');
});
});
当您将jquery对象传递给javascript对象的构造函数时,到底发生了什么
另外,调用on方法的obj.dd中的obj是什么
当您将jquery对象传递给javascript对象的构造函数时,到底发生了什么
您正在使用参数调用构造函数。这就是全部。发生的任何其他情况取决于下拉列表
函数的定义
jQuery对象没有什么特别之处。它与任何其他JavaScript对象一样。它恰好是使用第三方JavaScript创建的
另外,调用on方法的obj.dd中的obj是什么
我们不知道。您还没有向我们展示定义它的代码。它必须在页面的其他地方定义。您必须显示
下拉列表
和obj
的代码。大概obj.dd
是一个jQuery对象,因为.on
方法在其他情况下不起作用。我想您的下拉列表
方法是这样的:this.dd=dd代码>(dd是传入的jquery对象)。您的obj
是使用类似var obj=new下拉列表($('#dd'))的内容创建的代码>。如果是这样的话,obj.dd
是您传入的jQuery对象。我不太清楚为什么会有否决票。对我来说,这似乎是一个很好的解释。也没有真正的理由去争取选票!对,我明白了。只是代码的呈现似乎暗示它是自包含的,这就是混淆的原因。谢谢