2009-08-13 145 views
1

我正在使用动态jQuery轮播在主页上显示缩略图图像....旋转木马工作正常...我想为每个图像添加工具提示.. ..为此,我正在使用jQuery工具提示....在悬停工具提示应显示原始图像,上传等等...在jquery工具提示中转义双引号和单引号

向每个图像添加工具提示的JavaScript如下...

function mycarousel_getItemHTML(url) 
{ 
var url= url.split(","); 
return '<a href="'+url[4]+'" onmouseover="Tip(\'<img src=\''+url[5]+'\'></img><br/><b>'+url[1]+'</b><br />Category:'+url[6]+'<br/>Views:'+url[2]+'<br/>Uploaded by:'+url[3]+'\')" onmouseout="UnTip()"><img src="' + url[0] + '" width="75" height="75" alt="" /></a>'; 
}; 


url[5]=original img src 
url[1]=title 
url[6]=category name 
url[2]=no of views 
url[3]=uploaded by 
url[0]=thumbnail img source 

以上的JavaScript给我下面的错误

丢失)后的参数列表

我怎样才能正确地逃脱单引号和双引号?请帮我... -

+0

您什么时候遇到错误?当你鼠标悬停或文档加载时? – 2009-08-13 09:08:24

+0

在鼠标悬停... – Sakura 2009-08-13 09:11:23

+0

我认为有人来了,只是低估了一切。所有答案都在同一时间下调。 – 2009-08-13 14:09:29

回答

2

我觉得onmouseover部分是错误的,你想要的:

onmouseover="Tip(\'<img src=\\\''+url[5]+'\\\' /><br/><b>'+url[1]+'</b><br />Category:'+url[6]+'<br/>Views:'+url[2]+'<br/>Uploaded by:'+url[3]+'\')" 

让我知道,如果不工作 - 我的头从想成为一个JavaScript解释器伤害。我认为这是正确的。

p.s.我修复了<img>标签 - 我认为一般<img>标签应该是自动关闭的<img... />,而不是<img...></img>

+0

非常感谢你..你工作...^_^ – Sakura 2009-08-13 09:22:37

+0

非常好! 随意标记此答案为接受然后! 2009-08-13 09:23:28

+0

哈哈...对不起...我其实忘了这么做... ^^ – Sakura 2009-08-13 09:25:34

0

假设HTML &quot;实体得到适当的解释(和重新格式化,使人们可以看到发生了什么事情。):

function mycarousel_getItemHTML(url) 
{ 
    var url= url.split(","); 
    // wrapping attributes in double-quotes, so use double-quote 
    // entity within attribute values: 
    return '<a href="' + url[4] + '" ' + 
     'onmouseover="Tip(\'<img src=&quot;' + url[5]+'&quot;/><br/>' + 
     '<b>' + url[1] + '</b><br />' + 
     'Category:' + url[6] + '<br/>' + 
     'Views:' + url[2] + '<br/>' + 
     'Uploaded by:' + url[3] + '\')" ' + 
     'onmouseout="UnTip()">'; 
};

注意:你应该实体编码所有<&lt;的的onmouseover属性里面太。这可能会减少浏览器的工具提示范围