2012-09-24 33 views
1

我已經實現了jquery datepicker,Cufon腳本也在頁面上實現。我已經在「下個月」,「上個月」以及Cufon.replace和Cufon.refresh的日期點擊事件上實現了一些jquery。問題是我面對的是,當頁面加載時,如果我點擊下一個或上一個按鈕,他們工作得很好,直到我點擊任何日期。無論何時點擊下一個或上一個點擊日期後,總會在月份名稱的位置顯示一個錯誤,指出「未定義的NaN」。我無法理解問題出在哪裏。如果我刪除了cufon,它在所有狀態下都能正常工作。cufon創建問題與jquery datepicker

回答

2

答案就是這樣。是不使用cufon。現在你可能想知道......我的超甜甜字體呢?

那麼,既然cufon是一個骯髒的憎惡,你需要一個備份計劃。該計劃是@ font-face proeprty。這裏是一個字體生成器的鏈接:http://www.fontsquirrel.com/fontface

這將生成一個'bulletproof'Css通道,允許你使用你的字體。然後,您只需在jQuery UI主題中設置字體系列屬性即可更改文本。

Cufon需要從根本上'刮'屏幕,並且在屏幕上做出超結實的文字 - 空白 - 分裂 - 畫布 - 纏繞 - 魔法。有狀態,以及日期選擇器「自行讀取」的能力可能會受到影響。我明白你已經搞清楚'刷新'事件了,但是你實際上挖掘了這個小部件並且改變了它的html。如果有某些方法在特定位置尋找某些jQuery節點 - 它們不在那裏。 Cufon重新排列並嵌套它們。

前往。使用@fontface。 永久從工具箱中彈出cufon。無論如何,你應該這樣做。它是一個Css解決方案,因此它將非常快速地呈現,而不會干擾您的腳本。這是首選的方法。

+0

這是可能的從日期中刪除錨點並添加跨度而不是錨點。我已經嘗試過,但通過刪除錨datepicker是無法填充日曆不同顏色的日曆。 – Farhan

+0

閱讀我再次寫的內容。您不應該僅僅爲了支持字體​​而替換html元素。跨度和錨點不是1:1可交換的。是的,你可以在技術上用錨點替換跨度, $('a')。replaceWith(''); ....但它可能會打破別的東西,等等。這是一個壞主意 - 不要這樣做。如果您需要將腳本附加到依賴特定html結構的有狀態小部件,請停止使用cufon - cufon會改變結構。 –

+0

是的,它打破了代碼中的其他東西。感謝您的親切幫助。 – Farhan