jQuery插件开发:每次混淆



当我使用这些代码时,网络运行良好:

ComOperate.prototype.initop = function()
{
    var op_children = this.$element.find(".mikeoperate").each(function()
   {
   if($(this).attr("data-initstatus") == "hide")
   {
        $(this).hide();
   }
})

但是,如果我使用这些代码,则网络崩溃:

var op_children = this.$element.find(".mikeoperate").hide;
for(var pp in op_children)
{
   var p = $(op_children[pp]).attr("data-initstatus");
   if(p == 'hide')
   {
        $(op_children[pp]).hide();
   }
}

我不知道为什么

hide()是 function而不是 property,然后将 for in替换为简单的 for

var op_children = this.$element.find(".mikeoperate");// remove hide from here
for(var pp=0,len=op_children.length;pp<len;pp++) {
   var p = $(op_children[pp]).attr("data-initstatus");
   if(p == 'hide') {
        $(op_children[pp]).hide();
   }
}

实时演示

最新更新