2010-05-31 79 views
0

我知道IE7有問題...如何在焦點上更改IE7中輸入框的樣式?

我已閱讀帖子在這裏和谷歌告訴我,我需要手工設置風格onfocus()和onblur()。但是,我嘗試的所有內容都不起作用!

這裏是我的jQuery

$(document).ready(function(){      

     if (jQuery.browser.msie === true) { 

     $("input.date-picker").each(function(i) 
      { 
       var $foo= $(this); 
       $foo.bind('onfocus onblur', function() { 
        $(this).toggleClass('smalltxt-active'); 
        }); 

      });     

      }//end if 


    }); 

的相應盒

<input name="ctl00$SelectionContent$Selections1$txtDestinationDate" type="text" 
id="ctl00_SelectionContent_Selections1_txtDestinationDate" class="date-picker" 
style="width:80px;" /> 

我已經證實了我的代碼被檢測MSIE。我得到了2個input.date-picker對象的計數。

任何想法?

由於提前,

回答

3
$foo.bind('onfocus onblur', function() { 

應該

$foo.bind('focus blur', function() { 

你不需要每個迴路真的,

$("input.date-picker").bind('focusin focusout', function(){ 
    $(this).toggleClass('smalltxt-active'); 
} 

就好了。它將選擇類'date-picker'的所有輸入元素並將事件綁定到它。 您可能還想了解.focusin().focusout()事件。

+0

感謝您的快速回答! 是否.bind()將代碼添加到這些事件的輸入元素? 即使發生這種變化,它也不起作用。我沒有看到任何標記添加,要麼(不知道如果我應該) – TheGeekYouNeed 2010-05-31 06:24:25

+0

更新。 .bind()只調用綁定自定義代碼的eventhandler方法。如果一切正常,你可以使用FireBug來觀察班級smalltxt-active的切換。 – jAndy 2010-05-31 06:40:50

0

嘗試這對於許多形式元件

$( 「輸入,選擇,鍵」)結合( '的focusIn事件的內容',函數(){$ (本).toggleClass( 'focu'); });

相關問題