javascript推送jquery函数
我有一些内联jquery,我想在jquery加载后在页脚中加载它 我不想在标题中加载jquery。我不想将内联jquery更改为js文件,因为其中还包含PHP 但我相信javascript可以将其加载到页脚中 在标题中,您可以这样做javascript推送jquery函数,javascript,jquery,Javascript,Jquery,我有一些内联jquery,我想在jquery加载后在页脚中加载它 我不想在标题中加载jquery。我不想将内联jquery更改为js文件,因为其中还包含PHP 但我相信javascript可以将其加载到页脚中 在标题中,您可以这样做 var code = []; 现在有了一个空数组 现在我想将内联jQuery代码推送到数组中 $(function myFunction(){ // jQuery methods... }); 所以最终你可以做这样的事情: code.push(myFun
var code = [];
现在有了一个空数组
现在我想将内联jQuery代码推送到数组中
$(function myFunction(){
// jQuery methods...
});
所以最终你可以做这样的事情:
code.push(myFunction);
var code = [];
function _dom_ready() {
$(function() {
// do something here...
})
}
code.push(_dom_ready);
function click_something() {
$('div.something').click(function() {
// event handler here
});
}
code.push(click_something);
function click_handler_something2() {
// event handler here
}
function click_something2() {
$('div.something2').click(click_handler_something2);
}
code.push(click_something2);
这样我就可以推送所有不同的jQuery函数,当我将推送代码放入页脚时,它就会被加载
但这对我不起作用。控制台日志显示“myFunction”未定义
这里有一个函数表达式,作为参数传递给$
因此:
- 它将在DOM就绪事件上被调用(因为
是$(a\u函数)
$(document)的缩写。on('Ready',a\u函数)
- 它在该函数的作用域内创建一个名为
的变量myFunction
code.push(myFunction);
可以工作,但只能在myFunction
内部工作,您可能不希望它出现在那里,因为每次调用它时它都会被反复推到数组上
您需要一个函数声明才能使函数出现在当前范围中
据我所知,你可以这样做:
code.push(myFunction);
var code = [];
function _dom_ready() {
$(function() {
// do something here...
})
}
code.push(_dom_ready);
function click_something() {
$('div.something').click(function() {
// event handler here
});
}
code.push(click_something);
function click_handler_something2() {
// event handler here
}
function click_something2() {
$('div.something2').click(click_handler_something2);
}
code.push(click_something2);
或者像这样:
code.push(myFunction);
var code = [];
function _dom_ready() {
$(function() {
// do something here...
})
}
code.push(_dom_ready);
function click_something() {
$('div.something').click(function() {
// event handler here
});
}
code.push(click_something);
function click_handler_something2() {
// event handler here
}
function click_something2() {
$('div.something2').click(click_handler_something2);
}
code.push(click_something2);
然后运行所有函数:
for(var f = 0; f < code.length; f++) {
if(typeof code[f] == 'function') {
code[f]();
}
}
for(var f=0;f
您可以使用函数myFunction(){//jQuery methods…}
然后$(myFunction);
和code.push(myFunction);
尝试定义类似函数myFunction(){//code}的函数
请分享示例html和jsI仍然没有达到在数组中推送函数引用的目的???你是说在footer中调用(var i=0,z=code.length;i
?!我也这样理解,但要知道@a.Wolff不知道那一个。谢谢。我会更正我的循环语句。