$.fn.onContentLoad = function (fun) {
debugger;
if ($(this).live().length != 0) {
$(document).off("onContentLoad", "#"+$(this).live()[0].id);
$(document).on("onContentLoad", "#"+$(this).live()[0].id, fun);
//$(document).undelegate($(this).live()[0].id, "onContentLoad");
//$(document).delegate($(this).live()[0].id, "onContentLoad", fun);
} else
{
$(document).undelegate($(this).selector, "onContentLoad");
$(document).delegate($(this).selector, "onContentLoad", fun);
}
//$(document).off("onContentLoad", "#div-datatable-monitoringrecord");
//$(document).on("onContentLoad", $(this).escapeSelector(), fun);
};
我写了这样一个回调函数,可是当代码执行到
$('#div-datatable-id').onContentLoad(function (e) {
console.log(2);
});
它就无论如何都不进去里面的方法,跪求大神是我哪里写错了吗?
浏览器f12调试一下。
调试发现没有进入方法内部,而且也没有抱任何的错。之前用的是jq1.7,现在升级成了3.3.我不知道是不是因为不兼容什么的问题。。。
@临冰听雪丶: 加alert调试不进那一步吗,把id名字换一下试试
@徒然喜欢你: id换了也依然不行,console.log(2); 打印不出来
..如果是 $(this).selector获取不到的话 是肯定的。。 你可以换成ths.selector 看看能不能获取到
随带一体 会打断点么
还有 onContentLoad 有这个事件吗? 可能是我见识有限 不知道jq还有这个事件 不过 可能是我不怎么用jq的原因吧
一样获取不到。肯定会啊。。。
换了table插件,取消回调的使用, 感觉应该不是回调出的问题
有实际的运行环境吗? 比如说 页面之类的。。 光点东西 很难判断呀;
– blurs 6年前随带说一句 live的兼容性 不是很好 。。。
@blurs: $(this).selector 这个取不到值,才想到了用live。有啊,就是录用jq去加载一个table,table加载的时候用了一个回调函数。然而却怎么不进回调的方法。。。
– 临冰听雪丶 6年前