简单的jquery小部件


jQuery.widget("ui.test", {
    _init: function(){
        alert(this.element.innerHTML);
    }
});

当我将其附加到 HTML 元素
时,我该如何做到这一点它会提醒内部 HTML(我知道它什么都不做,只是为了了解基础知识)。

<div id="baba">ja jaj</div>
<script>
$('#baba').test();//will alert "ja jaj"
</script>

我在这里错过了什么?

我错过了什么:

我的代码实际上非常好,除了,我假设this.element是一个HTML元素,而实际上它是一个jQuery对象。因此,innerHTML什么也没做,而html()在下面的答案中起作用了。

你缺少 jQuery UI 库。只需附上它,您就可以开始了 - http://jsfiddle.net/jUm5H/

(function($) {
    $.widget("ui.test", {
        _init: function() {
            alert( this.element.html() );
        }
    });
}(jQuery));
$('#baba').test();

更新

"为了确保你的插件不会与其他可能使用美元符号的库发生冲突,最佳做法是将jQuery传递给IIFE(立即调用的函数表达式),将其映射到美元符号,这样它就不会在其执行范围内被另一个库覆盖。

所以这基本上只是一个好的做法。你可以忽略它,它会起作用 - http://jsfiddle.net/jUm5H/1/但最好从一开始就以正确的方式进行。这可能会在未来的项目:)中节省大量的调试时间和挫败感

相关内容

  • 没有找到相关文章

最新更新