我正在尝试评论以下html,以便它不应该转到超链接。
<a href="<!--http://www.google.com=-->" target="_blank" onclick="javascript:alert('Navigation Prevented')">CLICK HERE FOR GOOGLE</a>
我无法评论target =“_ blank”。如果我这样做它不起作用,它也会在页面上显示javascript。
如何在新标签页中显示页面显示警告以及停止打开页面。我希望取消target =“_ blank”的效果。
我们不能为html内联多个注释。
答案 0 :(得分:1)
通过添加return false;
,您可以这样做而不是评论。这可以防止浏览器关注链接:
<a href="http://www.google.com" target="_blank"
onclick="javascript:alert('Navigation Prevented'); return false;">CLICK HERE FOR GOOGLE</a>
答案 1 :(得分:1)
<a href="google.com" target="_blank" onclick="javascript:alert('Navigation Prevented');return false;">CLICK HERE FOR GOOGLE</a>
这一点的重要部分是return false;
属性上的onclick
。这指示浏览器在单击后立即取消此链接。所以会发生什么是javascript将被执行,但链接将不被跟踪。
答案 2 :(得分:1)
HTML标记内不能包含HTML注释,因为注释本身就是标记。
您可以从事件处理程序返回false
,以防止浏览器跟踪链接:
<a href="http://www.google.com" target="_blank" onclick="javascript:alert('Navigation Prevented');return false;">CLICK HERE FOR GOOGLE</a>
答案 3 :(得分:1)
在看到其他用户说评论不能包含在元素属性中之后,我开始想知道为什么。当然这是一个不好的做法,但为什么它不起作用?
我检查了HTML5 comments和HTML4.01 comments的规格,答案是在4.01规范中:
请注意,评论是标记
评论的<!
部分仅打开声明,>
将其关闭。它是--
字符串,用于将声明标识为注释。将注释语法与doctype声明和CDATA部分进行比较时,这一点就变得很明显了。
因为你不能在属性值中放置声明(我无法在规范中明确说明这一点,但似乎很明显),注释不能包含在属性值中。
有趣的是,HTML5 comments部分未提及“评论是标记”的说明。但是,我确信同样的规则仍然存在。
如果有任何错误,请随时发布更正。