我正在尝试制作一个简单的jQuery手风琴插件,并且无法弄清楚为什么'this'关键字不能正常工作。这是插件的代码:
(function( $ ){
$.fn.accrdn = function(userSettings) {
var defaults = {
toggle: true
};
var options = $.extend({}, defaults, userSettings);
var handle = this.find('.handle');//doesn't work!
if (options.toggle) {
handle.click(function(){
$(this).next('.panel').slideToggle();
});
} else {
handle.click(function(){
$(this).next('.panel').slideUp();
});
};
};
})( jQuery );
答案 0 :(得分:6)
既然OP提供了一个代码用法的示例,问题是手风琴div的选择器,它应该是:
$(document).ready(function() {
$('.accordion').accrdn({toggle:true, slideSpeed:500});
});
注意:选择器缺少.
以确定它是class
选择器