Javascript for循环中的onClick未触发

Javascript for循环中的onClick未触发,javascript,loops,for-loop,onclick,Javascript,Loops,For Loop,Onclick,我下面的代码来自最近的一个项目。我尝试在循环中实现一个onClick函数,这样每个div都可以点击并加载相应的网页 我有一个数组,目前只有一组值,但您可以得到多个类似值的概念: var itemsHTML = '', items = [ { itemType:'ani', itemName:'Show Reel 10-11', path:'thumb_showreel.jpg', ur

我下面的代码来自最近的一个项目。我尝试在循环中实现一个
onClick
函数,这样每个
div
都可以点击并加载相应的网页

我有一个数组,目前只有一组值,但您可以得到多个类似值的概念:

var itemsHTML = '',
        items = [
        {
          itemType:'ani',
          itemName:'Show Reel 10-11',
          path:'thumb_showreel.jpg',
          urlPath:'showreel.html'
        }];
以及从数组中获取信息的循环(请注意
onClick
——这是我的输入,其他内容都来自教程:

    for(var i = 0; i < items.length; i++) {
      var type = items[i]['itemType'];
      var name = items[i]['itemName'];
      var path = items[i]['path'];
      var urlPath = items[i]['urlPath'];
      itemsHTML += "    <div class=\"element " + type + "\"  style=\"background-image:url('portfolio/" + type + "/" + path + "')\" onClick=\"document.location='http://www.thepapertorium.co.uk/'" + urlPath + "\">";
      itemsHTML += "      <div class=\"label\">";
      itemsHTML += "        <h1>" + name + "<\/h1>";
      itemsHTML += "      <\/div>";
      itemsHTML += "    <\/div>";
    }
for(变量i=0;i

同样的
onClick
取自我的标题。它在那里工作正常,所以我想我可以将它粘贴到这里,并且,自然地,坚持
for
循环所需的语法,但我运气不好。请帮我解决这个简单的难题!

你的问题可能在单个
-应该转到tURL的结尾:


onClick=\“document.location=”http://www.thepapertorium.co.uk/“+urlPath+”\“
您的问题可能在单个
中-它应该转到URL的末尾:


onClick=\“document.location=”http://www.thepapertorium.co.uk/“+urlPath+”“\”

我认为您的问题是
文档.位置
而不是
窗口.位置
。但我不会为此使用javascript,您可以使用锚定标记:

itemsHTML += "    <a class=\"element " + type + "\"  style=\"display: block; background-image:url('portfolio/" + type + "/" + path + "')\" href=\"http://www.thepapertorium.co.uk/" + urlPath + "\">";
itemsHTML+=”;

我认为您的问题是
文档.location
而不是
窗口.location
。但我不会为此使用javascript,您可以使用锚定标记:

itemsHTML += "    <a class=\"element " + type + "\"  style=\"display: block; background-image:url('portfolio/" + type + "/" + path + "')\" href=\"http://www.thepapertorium.co.uk/" + urlPath + "\">";
itemsHTML+=”;

引用问题-我通过颠倒“和”来简化它们

我还添加了;cursor:pointer,并将document.location更改为window.location,因为这更正确。实际上,bfavaretto说您不需要javascript来更改页面是正确的,一个链接甚至可以免费为您提供指针

itemsHTML+='';

下次尝试jsfiddle.net和firebug的报价问题-我通过颠倒“and”来简化它们

我还添加了;cursor:pointer,并将document.location更改为window.location,因为这更正确。实际上,bfavaretto说您不需要javascript来更改页面是正确的,一个链接甚至可以免费为您提供指针

itemsHTML+='';

下次尝试jsfiddle.net和firebug

构建HTML后,您能否提供一个HTML示例?让脚本运行,查看源代码并编辑问题以添加脚本生成的内容。使用JS连接嵌入HTML中的JS字符串?这是调试的噩梦(正如您所发现的)。使用标准的DOM操作,而不是与innerHTML混淆。能否在构建HTML后提供一个HTML示例?让脚本运行,查看源代码并编辑问题,以添加脚本生成的内容。使用JS连接嵌入HTML中的JS字符串?这是调试的噩梦(正如您所发现的)使用标准的DOM操作,而不是搞乱innerHTML.document.location不是问题,但是你不需要javascript来更改位置是正确的谢谢@mplungjan,我不知道
文档。location
存在,总是使用
窗口。location
…也可以自由投票给我。我也想在这里得到一些爱:)document.location不是问题,但是您不需要javascript来更改位置是正确的谢谢@mplungjan,我不知道
document.location
存在,总是使用
windows.location
…也请随意投票。我也想在这里得到一些爱:)