Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery:如何根据单击的内容触发某些事件?_Javascript_Jquery - Fatal编程技术网

Javascript JQuery:如何根据单击的内容触发某些事件?

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循环

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]);
});