在jquery工具提示中转义双引号和单引号
问题描述:
我正在使用动态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给我下面的错误
丢失)后的参数列表
我怎样才能正确地逃脱单引号和双引号?请帮我... -
答
我觉得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>
。
答
假设HTML "
实体得到适当的解释(和重新格式化,使人们可以看到发生了什么事情。):
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="' + url[5]+'"/><br/>' +
'<b>' + url[1] + '</b><br />' +
'Category:' + url[6] + '<br/>' +
'Views:' + url[2] + '<br/>' +
'Uploaded by:' + url[3] + '\')" ' +
'onmouseout="UnTip()">';
};
注意:你应该实体编码所有<
到<
的的onmouseover属性里面太。这可能会减少浏览器的工具提示范围
您什么时候遇到错误?当你鼠标悬停或文档加载时? – 2009-08-13 09:08:24
在鼠标悬停... – Sakura 2009-08-13 09:11:23
我认为有人来了,只是低估了一切。所有答案都在同一时间下调。 – 2009-08-13 14:09:29