由于某些原因,onblur和onfocus属性不起作用。我对它们的定义是正确的吗?
var replyTxt = document.createElement("input");
replyTxt.id="replyTxt";
replyTxt.type="text";
replyTxt.value="Write a reply";
replyTxt.onfocus = function(){if(replyTxt.value==replyTxt.defaultValue) replyTxt.value='';};
replyTxt.onblur= function(){if(replyTxt.value=='') replyTxt.value=replyTxt.defaultValue;};我还尝试过将"function(){if(replyTxt.value==replyTxt.defaultValue) replyTxt.value='';}"放在引号中
发布于 2010-12-20 15:49:20
事件起作用了-所以你的逻辑可能有问题...
if(replyTxt.value==replyTxt.defaultValue) replyTxt.value='';在哪里设置replyTxt.defaultValue?在您的示例中,您不需要-因此逻辑永远不会触发。试试这个。
var replyTxtDefaultText = "Write a reply";
var replyTxt = document.createElement("input");
replyTxt.id="replyTxt";
replyTxt.type="text";
replyTxt.value=replyTxtDefaultText;
replyTxt.onfocus = function(){if(replyTxt.value==replyTxtDefaultText) replyTxt.value='';};
replyTxt.onblur= function(){if(replyTxt.value=='') replyTxt.value=replyTxtDefaultText;};发布于 2010-12-20 15:50:41
只需提示:尝试在事件函数中用this替换replyTxt。
发布于 2010-12-20 15:57:55
试试setAttribute。有关函数的更多信息请查看此link
var replyTxt = document.createElement("input");
replyTxt.setAttribute('onFocus', 'focusFunction()');
function focusFunction()
{
if(replyTxt.value==replyTxtDefaultText)
replyTxt.value='';
}https://stackoverflow.com/questions/4487713
复制相似问题