Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 创建Jquery插件_Javascript_Jquery_Jquery Plugins - Fatal编程技术网

Javascript 创建Jquery插件

Javascript 创建Jquery插件,javascript,jquery,jquery-plugins,Javascript,Jquery,Jquery Plugins,我正在创建带有简单警报选项的jquery插件。我是这样做的。下面是我的代码。但它不起作用。 下面的代码是单独的js文件。 (function($) { $.fn.gettingmessage = function() { var element = this; $(element).load(function() { alertingcontent(); fun

我正在创建带有简单警报选项的jquery插件。我是这样做的。下面是我的代码。但它不起作用。 下面的代码是单独的js文件。

(function($) {
        $.fn.gettingmessage = function() {

            var element = this;

            $(element).load(function() {

                alertingcontent();

                function preventnextpage() {
                    return false;
                }

                function alertingcontent() {
                    alert("nicely done");
            });
        };

    })(jQuery);
我将此函数称为 这样

     $(function(){  
  $("body").gettingmessage();  
}); 
我不知道我该如何解决这个问题,任何建议都会很好。

谢谢

  • 首先,您缺少一个结束括号
  • 其次,该函数不执行您正在搜索的操作,请使用而不是
更新代码:

(function($) {
    $.fn.gettingmessage = function() {

        var element = this;

        $(element).ready(function() {

            alertingcontent();

            function preventnextpage() {
                return false;
            }

            function alertingcontent() {
                alert("nicely done");
            }
        });
    };

})(jQuery);

$(function(){  
  $("body").gettingmessage();  
}); 

var element=this;
”在插件中,
this
不是元素。这是jQuery集合,其中可能有零个或多个元素。在上面展示的代码中,这其实并不重要;如果你做了任何非琐碎的事情,它就会发生。“但它不起作用”“不起作用”不是一个有用的问题描述。不起作用怎么办?你预计会发生什么?会发生什么?您在控制台中看到了哪些错误?(如果没有,这是有用的信息。)第一个问题是您忘记关闭
alertingcontent
函数的主体。使用firebug/developer工具捕获类似的简单语法错误。感谢您指出问题所在。AFAIK,
ready()
仅绑定到
document
以检查DOM何时准备就绪。这里的
load
事件没有问题(它也考虑了图像,而
ready
没有)。我想问题是
load()
绑定到
body
,在执行javascript时已经加载了
body
。这取决于
body
中的所有资源是否都已加载。考虑<代码> $(窗口).Load < /Cord> VS >代码> $(文档).准备好< /COD> HI一个快速问题'ZESX,它工作得很好,但是当我用ID添加那个函数不起作用时?请看,我更改了div,因为调用jquery函数的不同id是不同的id,但我仍然收到警报。