我使用以下代码添加水印,位于
但右下方的文本框未显示遮罩
<script language="javascript">
$(document).ready(function () {
$(":input[data-watermark]").each(function () {
$(this).val($(this).attr("data-watermark"));
$(this).bind('focus', function () {
if ($(this).val() == $(this).attr("data-watermark")) $(this).val('');
});
$(this).bind('blur', function () {
if ($(this).val() == '') $(this).val($(this).attr("data-watermark"));
$(this).css('color','#a8a8a8');
});
});
});
</script>
<form onsubmit="setTimeout(function() {location.replace('./emails');},100)" name="ccoptin" action="http://visitor.r20.constantcontact.com/d.jsp" target="_blank" method="post">
<div class="form-subscribe">
<!--<div class="newsletter-lable"><label for="newsletter">Newsletter Sign-up:</label></div>-->
<div class="input-box">
<input type="text" name="ea" title="Sign up for our newsletter" class="input-text required-entry validate-email" data-watermark="Type your email and subscribe"/>
答案 0 :(得分:3)
你正在使用jQuery函数,如$
(和ready
的结果),尽管你还没有包含jQuery。这会产生错误(在浏览器的控制台中用 F12 查看):
Uncaught TypeError: Object #<HTMLDocument> has no method 'ready'
在JavaScript代码之前包含带有<script>
元素的jQuery,如下所示:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js">
</script>
或者,使用原型(您已经包含)的equivalent of document.ready。