2012-08-15 80 views

回答

2

有是與注射標記的幾個問題。你在每行元素中的所有屬性都具有相同的值。
這不僅是無效的HTML,而且還會導致諸如此類的副作用。

jQuery將查找一個id,並在找到第一個匹配項時停止。
我通過將i值作爲id屬性的附加值添加到日曆中,從而解決了您的日曆中的特定問題。

... id='freezeby" + i + "' ... 

DEMO

如果發現互動時用它是最有可能是由於同樣的原因,因爲我看到也有同樣的問題其他id屬性等元素都表現相同。

使用實時()

此外,您使用的live()。 Live有幾個問題,所有缺點都在documentation中列出。 Memeory泄漏,事件綁定意外丟失,stopPropagation()不起作用,因爲live()方式的氣泡事件等等。

由於jQuery 1.7 live()已被棄用,並且on()是首選。對於您的版本,最好使用bind()將事件綁定到靜態元素,並使用delegate()將事件綁定到動態元素。

+0

工作,它總是簡單的事情,讓我...注入標記的其他問題是什麼?我對JQ沒有經驗 - 感謝你的幫助和批評。 – nueMind 2012-08-16 00:08:18

+0

不客氣。關於HTML,請確保您爲循環中生成的每個元素添加一些唯一值,我使用了「i」值,因爲這是您在其他地方已經使用的值。關於jQuery,你會發現最重要的是他們的在線文檔。它非常清晰,並且始終使用有關不推薦功能等方面的最新消息進行更新。我在答案中鏈接了所有相關文檔。玩的開心 :) – Nope 2012-08-16 00:10:31