[英]Difference between jQuery Ready and jQuery Ready shorthand with parameter ?
[英]Workaround for passing parameter to jQuery ready()
我在jQuery document.ready()上調用了一些代碼,該代碼在多個HTML文件中使用。 現在的區別是,每個HTML都使用不同的div ID。 我知道一種選擇是只檢查$(document).ready()中的硬編碼div ID。 但是我想編寫一個通用代碼,該代碼將基於當前/調用HTML頁面獲取div ID?
那么有沒有辦法將參數傳遞給jQuery ready()?
$(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()
調用的函數。
准備好文檔僅將處理程序函數作為參數。 通過存儲每個html的當前div ID,您仍然可以在文檔准備功能中定義通用代碼。
<input type="hidden" id="current_div" value="div1" />
$(document).ready(function() {
var div_id = $('#current_div').val();
// generic code
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.