Javascript JQuery:如何根据单击的内容触发某些事件?
因此,我有一行图像显示,我想显示一个不同的列表项目时,每一张图片是点击。这是我到目前为止的演示 但那是八张照片。。因此,这是太多的代码来完成所有这些。 我也试着做了一个for循环Javascript JQuery:如何根据单击的内容触发某些事件?,javascript,jquery,Javascript,Jquery,因此,我有一行图像显示,我想显示一个不同的列表项目时,每一张图片是点击。这是我到目前为止的演示 但那是八张照片。。因此,这是太多的代码来完成所有这些。 我也试着做了一个for循环 for(var i=0; i < lines.length; i++) { $('img.nth-child(' + parseInt(i+1) +')').on('click', function() { $("#listitem"+ i+1).text(lines[i
for(var i=0; i < lines.length; i++) {
$('img.nth-child(' + parseInt(i+1) +')').on('click', function() {
$("#listitem"+ i+1).text(lines[i]);
})
}
for(变量i=0;i
但我有一个错误:
未捕获错误:语法错误,无法识别的表达式:img.n子级(1)
如何修复此问题?使用.index()
jsiddle使用.index()
jshiddle您可以通过来完成,因此:
$("#shots img").on('click', function() {
var idx=$(this).index();
$("#alcoholpoem li").eq(idx).text(lines[idx]);
});
检查下面的代码段
var-lines=[“八次放炮后,”,
“我还记得你的名字。”,
“我从不喝酒,”,
“为了口味”,
'这是文本',
'这是文本',
'这是文本',
'这是文本'
];
$(“#shots img”)。在('click',function()上{
var idx=$(this.index();
$(“#li”).eq(idx).text(行[idx]);
});代码>
您可以通过来完成,因此:
$("#shots img").on('click', function() {
var idx=$(this).index();
$("#alcoholpoem li").eq(idx).text(lines[idx]);
});
检查下面的代码段
var-lines=[“八次放炮后,”,
“我还记得你的名字。”,
“我从不喝酒,”,
“为了口味”,
'这是文本',
'这是文本',
'这是文本',
'这是文本'
];
$(“#shots img”)。在('click',function()上{
var idx=$(this.index();
$(“#li”).eq(idx).text(行[idx]);
});代码>
看起来这只是一个输入错误-你需要:nth-child()
,而不是。nth-child()
我想这个主题可能对你有帮助:看起来这只是一个输入错误-你需要:nth-child()
,而不是。nth-child()
我想这个主题可能对你有帮助:谢谢。我该如何把它放在不同的列表标签上呢?我试着用你的代码做一个for循环,并用listitem“+parseInt(I+1)替换#listitem1),不起作用?或者,使用属性以选择器结束。虽然最简单的方法是在0
的li
元素的id
处开始编号,而不是1
,对应于img
元素的索引。谢谢。但我如何将其放在不同的列表标记上?我尝试用您的代码并将#listitem1替换为listitem“+parseInt(i+1)无效?或者,使用属性以选择器结尾。尽管最简单的方法是在0
处的li
元素的id
处开始编号,而不是在1
处开始编号,对应于img
元素的索引谢谢。这就是我要找的。谢谢。这就是我要找的。
$("#shots img").on('click', function() {
var idx=$(this).index();
$("#alcoholpoem li").eq(idx).text(lines[idx]);
});