我为jQuery制作了一个插件,我只需点击标签索引就已经。
我的HTML代码:
<body>
<a href="../img/ib1.jpg" rel="group"class="asd">
<img src="../img/is1.jpg"/>
</a>
<a href="../img/ib2.jpg" rel="group"class="asd">
<img src="../img/is2.jpg"/>
</a>
<a href="../img/ib3.jpg" rel="group"class="asd">
<img src="../img/is3.jpg"/>
</a>
<a href="../img/ib4.jpg" rel="group"class="asd">
<img src="../img/is4.jpg"/>
</a>
</body>
我的插件代码:
(function( $ ) {
$.fn.nss = function( ) {
var elems = this
return elems.each(function() {
var thisindx = elems.index(this);
console.log(thisindx);
});
};
}( jQuery ))
这console.log(thisindx) print 0,1,2,3
但我只点击了标签索引值,而不是所有标签的值
我的javascript代码:
(function(){
$('a[rel="group"]').click(function(){
$('a[rel="group"]').nss();
})
});
答案 0 :(得分:0)
如果你真的想构建一个插件,你应该将你的click事件封装在插件中:
(function( $ ) {
$.fn.nss = function( ) {
var elems = this;
return elems.on('click', function(e) {
e.preventDefault();
var thisindx = elems.index(this);
console.log(thisindx);
});
};
}( jQuery ))
而不仅仅是将它绑定在你的元素上:
$(function(){
$('a[rel="group"]').nss();
});