问题描述
|
当我将鼠标悬停在Chrome中的某个网址上时,该网址会显示在Chrome状态栏中。在我的情况下,这会导致难看的javascript:bla-bla-bla参考。将鼠标悬停在链接上时,是否可以更改状态栏的内容?
谢谢
解决方法
我出于安全原因非常确定,这在任何浏览器中都是不可能的。否则,将很难检测到钓鱼网站的链接,因为攻击者可以将一个真实的URL放置在状态栏中,而危险链接实际上却指向其他地方...
请为您的超链接使用onclick事件处理程序,并将真实,有意义的URL放在
href
属性中,以代替javascript:
链接(即使该链接仅用于JavaScript)。
, 尽管您选择了答案,但是这个想法是替代方法。
您可以更改mouseover
上的href
属性以影响状态栏的内容,然后将其更改回mouseout
或click
:
function showNiceLink(el,e) {
e = e || event;
el.originalHref = el.originalHref || el.href;
console.log(e.type);
if (/click|out/i.test(e.type)){
el.href = el.originalHref;
} else {
el.href = \"http://Linking...\";
}
}
<a href=\"#this is a really UGLY link @1##$$%!!&\"
onmouseover=\"showNiceLink(this,event)\"
onmouseout=\"showNiceLink(this,event)\"
onclick=\"showNiceLink(this,event)\">a link with an ugly <code>href</code></a>
, <a href=\"#\" onClick=\"yourFunc(); return false;\">Your \"link\"</a>
, 我猜您的意思是您想更改为所选链接显示的目的地?在这种情况下,您很可能应该在href属性中放置漂亮的url,并为JavaScript使用onclick属性。不确定是否可以通过将Javascritp放入href中来复制所有操作。
, 假设这是您所拥有的:
<a onClick=\"blabla\">Link</a>
在上面加上10英镑。然后应显示ѭ11而不是in12。
因此,将是这样的:
<a href=\"#\" onClick=\"blabla\">Link</a>
, 绝对有可能达到预期的效果。只需查看Google在搜索结果状态栏中输入的内容即可。
但是,您需要使用某种技巧,例如Bo14ѭ如BoltClock建议。
Google会向您显示您希望看到的内容-简洁的URL。
但是,它们在下面使用带有监控参数的长重定向URL来跟踪您单击任何结果链接时的情况。这样,Google可以监控点击了哪些搜索结果,哪些没有点击。
不幸的是,大多数人没有意识到这一点。坦率地说,我将很高兴看到一个浏览器扩展程序,它消除了所有这些肮脏的技巧,并用“真实的” URL替换了“跟踪” URL。