2013-04-09 54 views
0

基本上,我有大量的JQ在每個瀏覽器上運行良好,包括IE 9/10。我要求銷售代表今天測試一下,他們的電腦上安裝了IE 9。IE 9不可重現的問題9

當用戶單擊將HTML填充到表中的按鈕時,頁面跳轉到頂部。我知道這是由事件傳播引起的(我的其他SO帖子:jQuery Dynamically Updating Fields Scrolls Page)。所以我在任何地方都可以返回false(或使用event.stopPropagation(),具體取決於)。

但是,當這一個用戶加載頁面時,此問題再次出現。

是否有設置我應該檢查(注意JS的工作原理,頁面跳轉,所以它不應該是JS被禁用的問題),還是應該把它寫成「沒人知道你到底在做什麼?你的瀏覽器,但它不能在其他地方複製「?

我只是茫然不知所措,這是我用JQ或UI開發做過的最多(我喜歡堅持事情的後端),所以我不確定任何怪癖尋找或任何東西。

如果有什麼我可以做的,使這個問題更連貫,只是讓我知道,我會嘗試。我知道沒什麼可走的,但我不知道從哪裏開始。

+2

要回答這個問題,我們真的需要看到一些代碼或應用程序的鏈接。有太多的原因可能會導致這個問題。你問過他在控制檯遇到JS錯誤嗎?所有的JS庫加載是否正確?是否有一些圖書館位於主頁以外的地方(即防止用戶訪問它的防火牆) – Steve 2013-04-09 19:52:26

+0

因此,該按鈕具有「href」屬性並且實際上是一個鏈接? – Bergi 2013-04-09 19:53:20

+0

是的,這是一個Twitter的BS錨按鈕' DavidScherer 2013-04-09 20:17:35

回答

0

不是。它不是由事件傳播引起的,而是由按鈕的默認操作引起的。您應該致電.preventDefault(),而不是致電.stopPropagation()

+0

我返回false以便應該調用stoppropagation preventDefault和另一個。 – DavidScherer 2013-04-09 19:53:46

+0

但我知道你的意思 – DavidScherer 2013-04-09 19:55:24

+0

是的,根據[文檔](http://api.jquery.com/on/),'return false'觸發兩者。如果你做得對,必須有其他錯誤 - 但你需要向我們展示一些代碼。 – Bergi 2013-04-09 19:55:34