2012-08-15 83 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