只执行一次的我就要惊动“喜”了一遍又一遍,我怎么把它做一次并停止:如何获得一个javascript函数,在DOM准备
function doSomething() {
alert('hi');
}
$(function() {
doSomething();
});
只执行一次的我就要惊动“喜”了一遍又一遍,我怎么把它做一次并停止:如何获得一个javascript函数,在DOM准备
function doSomething() {
alert('hi');
}
$(function() {
doSomething();
});
尝试用:
window.onload = function() {
doSomething();
}
他使用jQuery,这是最好称呼它在'$(文件)。就绪()' –
劳尔是正确的,这将有助于让代码...
但是根据我这方面的经验,你想要的是沿着线的东西更多:
var doSomething = function() {
alert('hi');
}
$(document).ready(function() {
doSomething();
});
您是否想要做这样的事情?:
$(document).ready(function() {
doSomething();
});
您可能要坚持到更详细的风格:
function doSomething() {
alert('hi');
}
$(document).ready(function() {
doSomething();
});
虽然我这种风格决定不服的,它无关,与他的问题 – Matt
@马特:你说得对,这是很难值得回答而不是评论。我只想显示格式正确的备选样式 - 想知道更简洁的表单是否隐藏了一些错误(未在原始文章中显示)。 –
我想你包括你的JS文件多次来自HTML。清理你的HTML。
使用:
$(function(){
});
是完全正常的。使用更详细的表单没有好处。如果你正在编写一个插件,你可能会想这样做:
function($){
// $ always refers to jQuery here
...
}(jQuery);
// $ might not be defined here in compatibility mode.
极好的建议,检查JS是否被多次包含。更详细的'$(document).ready'形式的优点是它明确了你在做什么,特别是对不懂jQuery的编码人员。 –
// Fired once when document is ready
$(document).one('ready', function() {
doSomething();
});
使用。一是保证这只是一次完成,不repeatedly.It是好的把几个的document.ready事件侦听器(如果你需要多次执行其他事件),只要你不过分,为了可读性。当你想警告出现在第一次网页打开或当移动应用程序安装在首次
。一是特别有用。
你能告诉我们你在哪里,包括JavaScript文件您发布的HTML? –
我看不到相同的行为。这是一个小提琴示例。 http://jsfiddle.net/BjbEM/ – JaredPar
我想操作系统希望功能运行一次页面呈现第一次,然后在页面刷新OP不希望功能运行? – Rafay