简体   繁体   English

使用javascript添加onclick事件侦听器和元素

[英]Adding onclick event listeners and elements using javascript

I'm trying to add a series of images to the html page using javascript and a for loop. 我正在尝试使用javascript和for循环向html页面添加一系列图像。 But the event listeners such as onclick and onmouseover aren't responding when I test the page. 但是当我测试页面时,诸如onclickonmouseover类的事件监听器没有响应。

function changeText(element)
{   
  var menuItems = ['menu_item1','menu_item2','menu_item3','menu_item4'];
  var galleryImages = ["s1.jpg","s2.jpg","s3.jpg","s4.jpg","s5.jpg","s6.jpg","s7.jpg","s8.jpg","s9.jpg","s10.jpg","s11.jpg","s12.jpg","s13.jpg","s14.jpg","s15.jpg","s16.jpg","s17.jpg","s18.jpg","s19.jpg","s20.jpg"];

  var itemText = document.getElementsByClassName(element);
  var textString ="";           
  if(menuItem == menuItems[3])
  {
    for(var i=0;i<galleryImages.length;i++){
      textString+="<img id='img"+i+"'class='imageGallery'src='galleryImgs/s"+i+".jpg' width='150px' onclick='imageZoom('img"+i+"')'>";  
    }
    itemText[0].innerHTML = 'This is now menu_item4 text Left side';
    itemText[1].innerHTML = textString 
  }
  return;   
}

function imageZoom(img)
{
  var image = document.getElementById(img);
  image.style.width = "400px";
}       

It's your quote characters. 这是你的引用字符。

This-- 这个 -

onclick='imageZoom('img"+i+"')'

Becomes this-- 成为这个 -

onclick='imageZoom('img1234')'

The HTML parser sees-- HTML解析器看到 -

onclick='imageZoom(' some junk

So just change the quote characters for escaped double quotes ( \\" ). 因此,只需更改转义双引号( \\" )的引号字符。

onclick=\"imageZoom('img"+i+"')\"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM