【发布时间】:2011-11-29 05:27:16
【问题描述】:
我在 jQuery 中有一个简单的脚本,它与 jQuery 1.5.2 完美配合,正如您在 this jsFiddle 中看到的那样。应该发生的是,当您将焦点移到文本字段时,默认值将被删除。如果您将该字段留空,则会将原始默认值放回原处。
然而,同样的代码,只使用了 jQuery 1.6.3,却无法正常工作。 (不工作意味着默认值保留在文本框中,直到您手动删除它,如您在this jsFiddle 中看到的那样。
控制台中没有脚本错误,该功能的其他方面都可以运行。您可以看到 hover() 部分在两个 jsFiddles 中都运行良好。
总结版本(根本问题)
jQuery 1.6.3 正在为.attr('defaultValue') 返回undefined。
jsFiddle using jQuery 1.6.3 (not working)
但是,jQuery 1.5.2 正在返回 .attr('defaultValue') 的预期值。
jsFiddle using jQuery 1.5.2 (working)
问题:
有人知道为什么会这样吗? (在我看来,它就像一个 jQuery 错误。)
以下仍在工作......
document.getElementById().defaultValue
...但我认为在 jQuery 可用的情况下必须这样做非常难看。
我愿意接受其他建议。
【问题讨论】:
标签: jquery attributes version default-value