2011-11-28 52 views
0

我開發了一個小工具提示插件。它在IE,Chrome中工作正常。在Firefox中它是第一次正常工作。第二次,如果我刷新工具提示是奇怪的定位..不知道發生了什麼。jquery ui定位不斷變化

這裏的步驟

  1. 在Firefox

    第一點你的鼠標移到第一個輸入框--tooltip將靠近輸入框

    1. 然後向下滾動到第二個輸入框和鼠標通過第二個輸入框 - 第二個輸入框附近的工具提示。
    2. 單擊Firefox中的刷新按鈕不滾動。
    3. 現在將鼠標移過第一個輸入框..您將看不到提示框。
    4. 清除歷史記錄並返回您應該看到輸入框附近的工具提示。

    - >火狐3.6.24/tryed更新到Firefox 8仍然是同樣的問題

的代碼是在 ​​

複製到桌面,並嘗試在你的Firefox .. 。

感謝

+0

你是什麼意思刷新?如果你可以爲你的步驟編號,這將是有益的。 – mrtsherman

+0

請在這裏發佈您的代碼。 –

+0

查看jsfiddle鏈接 – coool

回答

2

jQueryUI - Position

注:jQuery UI的不支持定位隱藏要素。

(而結果是,它在某種程度上忽略了網頁的滾動偏移量)

您可以通過給它下面的CSS屬性使它成爲一個「看不見塊」八九不離十繞過它:display: blockvisibility: hidden權利之前使用position()函數,然後在需要時刪除它們。

檢查http://jsfiddle.net/frozenkoi/RmKyC/我補充說,我說,然後右鍵刪除之前和thecall到tip.position({...})後(你可以用tip.css. ...或任何添加的風格爲內聯)CSS類(.hiddenTip

您有其他問題也。您在頁面加載時計算工具提示的位置。物品重新排列後會發生什麼?也許文本會因爲窗口被調整大小或插入內容或元素更改大小而重排。工具提示仍顯示在舊的預先計算的位置。我認爲這就是@Eben Roux在他的回答中所談論的。

在我的小提琴中點擊說'演示頁面'的H1,你會看到它是如何得到一個高於它的餘量和一切向下,除了工具提示。

編輯:更新小提琴:http://jsfiddle.net/frozenkoi/wKTnC/基於@ coool的修改。請注意,我添加了!importantdisplayvisibility以及其他一些小的調整。

+0

如果我進入的位置然後仍然存在滾動問題。不知道我錯過了什麼...(我想使用jQuery UI的整個方法可能不是正確的,我必須自己定位???)http://jsfiddle.net/RmKyC/3/ – coool

+0

@ coool我在上面的評論中對你的小提琴做了一些小的修改,看看它是否更好一些。爲班的'visibility'和'display'屬性添加'!important'。 – frozenkoi

+0

我只看到!重要的被添加..如何改變了方程.. – coool

2

我發現position行爲奇怪的尚不可見的元素。您可能想要在顯示工具提示時對其進行定位。

+0

每當鼠標移過去時我都會定位它。它在IE/Chrome中運行正常。甚至在ff中只有當我刷新時 – coool

+0

每次設置位置都應該沒問題。它只在鼠標進入元素時設置一次。 –

+0

@EbenRoux:你的最後評論可以作爲改進編輯到你的答案中。 – tzot