注册 登录
编程论坛 JavaScript论坛

求问js函数方面的问题

LJY68835441 发布于 2015-05-04 17:54, 970 次点击
我想实现输入框的提示文字在点击时消失的功能,由于有多个输入框,要自定义函数去实现其功能,我自定义的函数是这样的,但就是不起作用,输入框里的文字会被去掉,求解
程序代码:
function addListener(element,e,fn){      

        if(element.addEventListener){   

        window.alert(1);

             element.addEventListener(e,fn,false);      

         } else {      

         window.alert(2);
             element.attachEvent("on" + e,fn);      

          }      

   }  

   var myinput = document.getElementsByName("signName").item(0);

 function click_moment(element)
   {
       window.alert(element.value);
   if(element.value=="姓名")
   myinput.value="";
   }
  

   function blur_moment(element)
   {
       if(myinput.value=="")  

    myinput.value = "姓名";
   }
  addListener(myinput,"click",click_moment(myinput))
   addListener(myinput,"blur",blur_moment(myinput))





[ 本帖最后由 LJY68835441 于 2015-5-4 19:30 编辑 ]
2 回复
#2
冰镇柠檬汁儿2015-05-05 00:19
首先用onfocus事件对应onblur事件,不要用onclick,因为文本框获取焦点不一定是点击的,tab键切换一样有可能。
其次document.getElementsByName方法有局限性,基本上只有form表单中特定的几种DOM元素起作用,比如单选框、复选框等,其他的都是无效的,建议你用id。
如果addListener函数是你自己写的(不是抄的),那你的水平,应该有能力解决你面临的问题,你可以考虑用querySelector这样的方法选择特定的DOM元素组。
#3
tlliqi2015-05-05 23:34
学习
1