无法访问插件中的jQuery对象
我知道这听起来很简单,但是下面的函数(无法访问插件中的jQuery对象,jquery,Jquery,我知道这听起来很简单,但是下面的函数(return($this)。each()…`)似乎在我的插件中几乎是活动的,这意味着我甚至没有收到警报。对于可能出现的问题,你有什么建议吗 (function($){ $.fn.plugin = function() { return $(this).each(function(){ var obj = $(this); obj.css('background', 'blue');
return(
$this)。each()…`)似乎在我的插件中几乎是活动的,这意味着我甚至没有收到警报。对于可能出现的问题,你有什么建议吗
(function($){
$.fn.plugin = function() {
return $(this).each(function(){
var obj = $(this);
obj.css('background', 'blue');
alert(this);
});
};
})(jQuery);
你怎么称呼这个插件?你有匹配的元素吗?检查选择器上的.length以确保您有>0个匹配的元素。检查此项
<html>
<head>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
</head>
<script type="text/javascript">
(function($){
$.fn.plugin = function() {
return $(this).each(function(){
var obj = $(this);
obj.css('background', 'blue');
$("#result").append('<span>in plugin : '+obj.html()+'</span><br />');
});
};
})(jQuery);
jQuery(function(){
var test = $("div").plugin();
$(test).each(function(){
$("#result").append('<span>out plugin : '+$(this).html()+'</span><br />');
});
});
</script>
<head>
<body>
<div>a</div>
<div>b</div>
<div>d</div>
<div>v</div>
<span id="result"></span>
</body>
</html>
(函数($){
$.fn.plugin=function(){
返回$(this).each(函数(){
var obj=$(本);
对象css(“背景”、“蓝色”);
$(“#result”).append('in plugin:'+obj.html()+'
');
});
};
})(jQuery);
jQuery(函数(){
var test=$(“div”).plugin();
$(测试)。每个(函数(){
$(“#result”).append('out plugin:'+$(this.html()+'
');
});
});
A.
B
D
v
为了测试这一点,我在ul列表中包含了一组li元素,选择它们并检查匹配元素的长度。结果总是相等于0。log($('li').length);哇,谢谢你问我如何调用插件。。。解决方案非常简单,就像这样一个问题一样微不足道。我忘记调用以将调用包含到以下内容中:$(document).ready(function(){$('li').plugin();});