我在jQuery document.ready()上调用了一些代码,用于多个HTML文件。现在区别在于这些HTML中的每一个都使用不同的div id。 我知道一个选项是只检查$(document).ready()中的hardcode div id。但我想编写一个通用代码,它将基于currrent /调用HTML页面获取div ID?
有没有办法将参数传递给jQuery ready()?
答案 0 :(得分:2)
$(document).ready()
只需要一个函数作为参数,这样你就可以编写一个函数,将你的ID作为参数并返回$(document).ready()
的函数。例如,而不是:
$(document).ready(function() {
$('#some_id').click(/*...*/);
});
你可以这样做:
function make_ready(id) {
return function() {
$('#' + id).click(/*...*/);
};
}
$(document).ready(make_ready('some_id'));
然后,您可以将make_ready
放在一些常用位置,并使用它来构建$(document).ready()
来电的功能。
答案 1 :(得分:1)
文档就绪只是将处理函数作为参数。 您仍然可以在文档就绪函数中定义通用代码,方法是存储每个html的当前div id。
<input type="hidden" id="current_div" value="div1" />
$(document).ready(function() {
var div_id = $('#current_div').val();
// generic code
});