我遇到了一些奇怪的事情,我需要帮助理解。当我使用“href”属性设置为“#”的链接标记时,它会导致页面加载事件运行两次。
例如,在以下链接标记中,我使用“#”作为“href”属性的值。我使用它来代替真正的“快捷方式图标”,只是为了避免 JavaScript 警告/错误。所以,我可以简单地删除它,但我想了解发生了什么(或者如何修复它,而不删除它):
<link rel="shortcut icon" href="#">
示例 HTML:
<!doctype html>
<html lang="en">
<head runat="server">
<title>My Example</title>
<!-- The "href=#" in the following link tag triggers the 'Page load' event to run twice. -->
<link rel="shortcut icon" href="#">
</head>
<body>
<form id="form1" runat="server">
<h1>My Example</h1>
</form>
</body>
</html>
页面背后的示例 VB.NET 代码:
Partial Class myexample
Inherits System.Web.UI.Page
Private Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
'This is triggered twice.
End Sub
End Class
将其用于“样式表”链接标记也会发生这种情况,如下所示:
<link rel="stylesheet" href="#" />
我在 Stack Overflow 上找到了一个解决方案,链接如下。它解决了 javascript 错误,这也是我的初衷,同时防止双页加载。答案已在下面的几篇文章中提供。
<link rel="icon" href="data:;base64,iVBORw0KGgo=" data-note="Optional. This was only ddded to prevent the 'favicon.ico' error in the console.">
链接: