我正在通过javascript为我的网页制作image
:
photoHTMLString = '<li class = "SliderPhoto"><img src = "' + ImageArray[x].src_small + '" size = "thumb" onclick = "ShowImagePopUP(' + ImageArray[x].src_big + ')" class = "FacebookSliderPhoto"/></li>';
每当我尝试点击照片进入ShowImagePopUP
时,我都会收到此错误:
missing ) after argument list
[Break On This Error] ShowImagePopUp(http://a8.sph...389_84095143389_5917147_2636303_n.jpg)
看起来我没有丢失任何'),所以我迷失了错误。 有什么建议吗?
答案 0 :(得分:27)
您需要将ShowImagePopUP
的内容包含在引号中:
"ShowImagePopUp(\'' + ImageArray[x].src_big + '\')"
哪个应呈现为:
ShowImagePopUp('http://a8.sph...389_84095143389_5917147_2636303_n.jpg')
^ note the quote here
答案 1 :(得分:2)
尝试
photoHTMLString = '<li class = "SliderPhoto"><img src = "'
+ ImageArray[x].src_small
+ '" size = "thumb" onclick = "ShowImagePopUP(\"'
+ ImageArray[x].src_big + '\")" class = "FacebookSliderPhoto"/></li>';
应该做的伎俩和解决你的问题留下完整的代码丑陋
像这样的函数应该有点可读并且可以使用......
function slideElement(image){
var li=document.createElement('li');
var img=document.createElement('img');
li.appendChild(img);
li.setAttribute('class','SliderPhoto');
img.setAttribute('class','FacebookSliderPhoto');
img.setAttribute('size', 'thumb');
img.setAttribute('src', image.src_small);
img.setAttribute('onclick', function(){showImagePopUP(image.src_big);});
return li;
}
答案 2 :(得分:0)
ImageArray[x].src_big
中的值需要引用。
尽量避免通过将字符串混合在一起来构建HTML。使用DOM构建器可以提供更容易调试的代码。
你可能最好写这个,所以函数根据小URI计算大URI,而不是硬编码。
答案 3 :(得分:0)
这是一些一般性建议,将字符串构建为中间变量,然后在最后组装它。然后,您可以使用调试器找出您的'或'不平衡的位置。当您拥有它时,您可以将它合并为一行,如果您需要或将其保留为中间变量。