我正在尝试创建一个jquery函数,并使用下面的代码,但没有得到任何输出。请告诉我制作它的过程。
<script type="text/javascript">
(function($){
$.fn.myplugin = function(){
alert(this.id);
};
})(jQuery);
$("#sample").myplugin();
</script>
答案 0 :(得分:11)
您可以在此处查看工作代码 - http://jsfiddle.net/gryzzly/YxnEQ/
请注意,在运行上述代码时,您需要一个id为“sample”的元素才能出现在文档中。此外,this
指向jQuery对象,因此为了获取元素id,您需要使用以下任一项:
alert( this[0].id );
或
alert( this.attr('id') );
第一种是可取的,因为它更快。
答案 1 :(得分:5)
试试这个:
<script type="text/javascript">
$(document).ready(function(){
myplugin($("#sample"));
});
function myplugin(obj){
alert(obj.id);
}
</script>
答案 2 :(得分:3)
试试这个:
<script type="text/javascript">
$(document).ready(function(){
$("#sample").myplugin(this.id);
});
function myplugin(id) {
alert(id);
}
</script>
答案 3 :(得分:1)
尝试更改
alert(this.id);
到
alert(this[0].id);
当你得到一个jQuery对象数组时。
答案 4 :(得分:0)
alert(this.attr('id'));
该上下文中的 this
是一个jQuery对象,而不是原始的DOM元素。