我正在开发 dnn 模块。随着同一页面上模块数量的增加,Jquery 会多次调用。
(function ($) {
$('#grid').hoverfold();
})(jQuery);
这是我用来避免冲突的方法。如果我对下一个效果使用相同的效果,它就不起作用。
我正在开发 dnn 模块。随着同一页面上模块数量的增加,Jquery 会多次调用。
(function ($) {
$('#grid').hoverfold();
})(jQuery);
这是我用来避免冲突的方法。如果我对下一个效果使用相同的效果,它就不起作用。
例如,如果您看一下,/DesktopModules/Admin/HostSettings/HostSettings.ascx
您会注意到 dnn 核心开发人员正在使用以下代码:
(function ($, Sys) {
$(document).ready(function () {
//Your code goes here.
});
}(jQuery, window.Sys));
除此之外,如果您注意到该$(document).ready
功能,他们会重复相同的代码来处理由于更新窗格而导致的 ajax 回发。这将确保即使模块启用了 ajax,您的代码也能正常工作。
$(document).ready(function () {
setUpDnnHostSettings();
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function () {
setUpDnnHostSettings();
});
});
您还可以在 admin 文件夹的 core 中查看其他 ascx 控件。我希望这将有所帮助。
var $j = jQuery.noConflict();
$j(document).ready(function(){
...code goes here...
});
尝试这个,