我正在製作一個非常簡單的使用ASP.NET 2.0的廣告按鈕系統。爲什麼我的ASP.NET超鏈接不能在IE中工作?
廣告是一個150x150px的廣場,顯示在**上。
(向下滾動一下,你會在屏幕右側看到鮮綠色的「憤怒的章魚」。)
現在,我不是**的管理員。相反,我是angryoctopus.net的管理員
因此,我無法隨意更改廣告顯示代碼。所以我給**的這段程式碼,很好地展示我們的廣告,同時仍然允許我以自定義在我身邊的事情後端代碼:
<iframe src="http://www.angryoctopus.net/Content/Ad/150x150.aspx"
frameborder="0" width="150" height="150" scrolling="no"
style="padding: 0; margin: 0;"></iframe>
你會發現這個片段在網頁的源代碼**
在我的身邊,代碼如下所示:
<%--150x150.aspx--%>
<asp:HyperLink runat="server" NavigateUrl="http://www.angryoctopus.net/" Target="_top">
<asp:Panel ID="pnlMain" runat="server" BackColor="#D1E231"
style="padding: 0; margin: 0" Width="150" Height="150">
<asp:Image runat="server" ImageUrl="http://www.angryoctopus.net/Content/Ad/150x150.png"
BorderStyle="None" style="padding: 0; margin: 0" />
</asp:Panel>
</asp:HyperLink>
...而且也爲命中計數一些無關緊要的後端C#代碼。據我所知,從代碼的角度來看,這看起來很好,很好。一切適用於Firefox和Chrome。此外,一切似乎在IE8 in all of my tests工作。我還沒有測試過IE7。
但是,當您在IE(8)中查看**時,超鏈接不會執行任何操作,並且遊標不會指示超鏈接即使存在。儘管您可以在狀態欄中看到目標網址。
我認爲**使用XHTML 1.0 Strict可能會導致問題,但這可能會影響Firefox和Chrome的權利? (我的aspx頁面使用XHTML 1.0 Transitional)
我唯一的理論是,一些隨機的CSS類可能會將一個奇怪的屬性應用到我的iframe,但我希望這會影響Firefox和Chrome。
這是IE的安全問題嗎?有誰知道**網站的哪一部分可能會阻止IE中的超鏈接?我怎樣才能解決這個問題,而不必在**的網站上硬編碼任何東西?是否有替代iframe可以完成同樣的工作而不需要複雜的腳本?
奇怪的是,你可以右鍵單擊並選擇打開鏈接,並且工作正常。重做你的顯示機制是否可以接受?也就是說,沒有必要擁有您擁有的特定服務器控件組合。 – JustLoren 2010-04-21 15:04:20
@JustLoren:我可以重做我的顯示機制,只要我仍然有控制圖像和C#代碼的超鏈接。你能給我一個功能替代的例子嗎? – Giffyguy 2010-04-21 15:05:43
看起來像丹的下面:) – JustLoren 2010-04-21 15:31:27