我的网站上有一个水印表单,使用水印脚本完美地工作(我仍然有一个老版本,它工作正常。)今天我注意到它突然停止工作,我无法弄清楚为什么。我用早期(仍在工作)的版本交叉检查样式和脚本,它们都是相同的。有什么想法吗?
以下是参考比较:
http://imgur.com/68pUc,UHenQ#1
这是我的网站
贸易设计师正在尝试学习编码,但我不是专业人士,所以请轻松一点。
提前感谢您的帮助,非常感谢。
答案 0 :(得分:0)
我发现唯一无效的事情是,在事件处理程序中,您没有指定ID选择器:$("name")[0].focus();
- 缺少#
。您甚至不需要,因为您可以在那里使用this
。
$("#name").click(
function () {
this.focus();
}
);
还简化了你的代码:
<script type="text/javascript">
$(document).ready(function() {
var $elements = $('#name, #mail, #message');
var texts = {
'mail': 'Email',
'name': 'Name',
'message': 'Message'
};
$elements.each(function () {
$(this).watermark(texts[this.id]);
}).click(function () {
this.focus();
});
});
</script>
答案 1 :(得分:-2)
我找到了这段代码:
<script type="text/javascript">
$(function () {
$("#name").watermark("Name");
$("#name").click(
function () {
$("name")[0].focus();
}
);
});
$(function () {
$("#mail").watermark("Email");
$("#mail").click(
function () {
$("mail")[0].focus();
}
);
});
$(function () {
$("#message").watermark("Message");
$("#message").click(
function () {
$("message")[0].focus();
}
);
});
</script>
$(function() {...
在FireFox中引发错误(“$(function() {...
无效)。
即使这等于$(document).ready(function() {...}
你也可以尝试一下:
<script type="text/javascript">
$(document).ready(function() {
$("#name").watermark("Name");
$("#name").click(
function () {
$("name")[0].focus();
}
);
$("#mail").watermark("Email");
$("#mail").click(
function () {
$("mail")[0].focus();
}
);
$("#message").watermark("Message");
$("#message").click(
function () {
$("message")[0].focus();
}
);
});
</script>
我将您的代码包装到$(document).ready
中,以便在文档准备好后执行:http://api.jquery.com/ready/