[英]Use Javascript string as selector in jQuery?
我用Java語言編寫:
for ( i=0; i < parseInt(ids); i++){
var vst = '#'+String(img_arr[i]);
var dst = '#'+String(div_arr[i]);
}
我如何像這樣繼續在jQuery中:
$(function() {
$(vst).'click': function() {
....
}
}
不,像這樣
$(function() {
$(vst).click(function() {
....
});
});
還有其他方法取決於您的jquery
庫版本
您的語法錯誤,但是除此之外,您將不會有任何問題。 要指定點擊:
$(function() {
for ( i=0; i < parseInt(ids); i++){
var vst = '#'+String(img_arr[i]);
var dst = '#'+String(div_arr[i]);
$(vst).click(function (evt) {
...
});
}
})
請注意,由於vst
在循環中發生變化,因此您的事件代碼也應放在循環中。
編輯:假設您希望每個圖像和每個div發生相同的事情,您還可以執行以下操作:
$(function () {
function imgEventSpec($evt) {
// image clicked.
}
function divEventSpec($evt) {
// div clicked.
}
for (var idx = 0; idx < img_arr.length && idx < div_arr.length; idx ++) {
$("#" + img_arr[idx]).click(imgEventSpec);
$("#" + div_arr[idx]).click(divEventSpec);
}
});
與此相關,您的vst必須是一個允許您單擊它的對象,並且您為該對象分配了一個類或ID,以便觸發該函數並運行for ... loop
如果我錯了,請糾正我,因為這是我從您的問題中得到的。
$(function() {
$(vst).click(function() {
....
}
})
您可以使用任何字符串作為jQuery的元素選擇器參數。
閱讀文檔以獲取更多信息。
您可以按照想要的方式將變量中的字符串傳遞給$()
。
例如,您可以執行以下操作:
var id = 'banner';
var sel = '#'+id;
$(sel).doSomething(); //will select '#banner'
綁定單擊處理程序時使用的語法有問題。 通常這樣工作:
$(sel).click(function(){
//here goes what you want to do in the handler
});
請參閱有關.click()
的文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.