首页 新闻 会员 周边

哪位js高手给解答一下

0
悬赏园豆:20 [已解决问题] 解决于 2013-02-17 00:42
View Code
<script type="text/javascript">
   $(document).ready(function(){
     jQuery.focusblur=function(focusid){
        var focusblurid=$(focusid);
        var defval=focusblurid.val();
        focusblurid.focus(function(){
           var thisval = $(this).val();
           if(thisval==defval){
             $(this).val("");
           }
        });
        focusblurid.blur(function(){
           var thisval = $(this).val();
           if(thisval==""){
             $(this).val(defval);
           }
        });
     };
     $.focusblur("#searchkey");
  });
</script>
</head>
<body>
<form action="#" method="post" name="myform">
  <input name="mytext" type="text" value="输入搜索关键词" id="searchkey"/>
  <input type="submit" id="searchbtn" value="搜索"/>
</form>
</body>
</html>

js最后一句运行$.focusblur("#searchkey");的目的是什么。

按说点击文本框的时候应该调用focusblur()函数才能执行操作,但是这里为什么点击文本框没有调用此函数就能执行操作了

一落叶而知秋的主页 一落叶而知秋 | 初学一级 | 园豆:79
提问于:2013-02-16 20:37
< >
分享
最佳答案
0

实际是有执行函数的

这个就是点击文本框

focusblurid.focus(function(){
          
var thisval = $(this).val();
          
if(thisval==defval){
             $(
this).val("");
           }
        });

它所执行的函数

==================

$.focusblur("#searchkey")的目的是向目标对象(#searchkey)注册两个事件focus(获得焦点)和blur(失去焦点)

收获园豆:20
Yu | 专家六级 |园豆:12980 | 2013-02-16 22:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册