我正在开发一个小应用程序,我要求用户输入一些信息。我想在输入字段中显示文本提示。我在 for 循环中执行此操作...加载页面时,提示正确显示,但“焦点”和“模糊”事件没有任何反应...
我想知道为什么自从我在我的 js 代码中不使用“for 循环”之后,一切正常...
顺便说一句,我使用 for 循环的原因是因为我不想重复自己遵循“DRY”原则......
谢谢你的帮助!
LP
这是代码:
<script src="/javascripts/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
var form_elements = ['#submission_url', '#submission_email', '#submission_twitter']
var text_hints = ['Website Address', 'Email Address', 'Twitter Username (optional)']
$(document).ready(function(){
for(i=0; i<3; i++) {
$(form_elements[i]).val(text_hints[i]);
$(form_elements[i]).focus(function(i){
if ($(this).val() == text_hints[i]) {
$(this).val('');
}
});
$(form_elements[i]).blur(function(i){
if ($(this).val() != text_hints[i]) {
$(this).val(text_hints[i]);
}
});
}
});
</script>