我确信这是一个简单的问题,似乎无法让它正常工作。
我与jQuery存在一些冲突,因此我使用了官方文档中提到的别名功能。
jQuery(document).ready(function($){
$('.loadmore').addClass('hidden'); // works fine!
loadmore();
});
function loadmore(){
$('.loadmore').addClass('hidden'); // doesn't work!
}
如何让别名为我的代码工作,我将这些代码放入函数中以便更好地组织和重用?由于上面示例中提供的问题,我目前正在使用jQuery
代替$
。我以为我可以保存一些数据并使用所有教程中显示的别名。
答案 0 :(得分:1)
你可以试试这个......
(function($) {
// Put all your jQuery here... and you can use $
})(jQuery);
答案 1 :(得分:1)
jQuery no conflict mode实际上将$
函数设置为不同的名称,如下所示:
$('select something').doSomethingElse(); // Works
var $j = jQuery.noConfilct();
$('select something').doSomethingElse(); // Doesn't work
$j('select something').doSomethingElse(); // Works
如果你不想为jQuery使用$
以外的名字,你可以这样做:
(function ($) {
$('selector').doSomething();
$('another selector').doSomethingElse();
}(jQuery));
这使jQuery = $
,但只在括号内,允许你像往常一样工作,永远不会导致冲突。
答案 2 :(得分:0)
在这种情况下,您可以将$
传递给您的函数。
jQuery(document).ready(function($){
$('.loadmore').addClass('hidden'); // works fine!
loadmore($);
});
function loadmore($){
$('.loadmore').addClass('hidden'); // should work fine too!
}