我有Javascript:
for ( i=0; i < parseInt(ids); i++){
var vst = '#'+String(img_arr[i]);
var dst = '#'+String(div_arr[i]);
}
我如何继续使用jQuery:
$(function() {
$(vst).'click': function() {
....
}
}
答案 0 :(得分:1)
不,就像这样
$(function() {
$(vst).click(function() {
....
});
});
根据您的jquery
库
答案 1 :(得分:0)
您的语法错误,但除此之外您将没有任何问题。要指定单击:
$(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);
}
});
答案 2 :(得分:0)
关于这一点,你的vst必须是一个允许你点击它的对象,并为对象分配一个类或id以触发该函数并运行for ... loop
如果我错了,请纠正我,因为这是我从你的问题中得到的。
答案 3 :(得分:0)
$(function() {
$(vst).click(function() {
....
}
})
您可以将任何字符串用作jQuery的元素选择器参数。
阅读文档以获取更多信息。
答案 4 :(得分:0)
您可以按照您想要的方式将变量中的String传递给$()
。
例如,你可以这样做:
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()