2013-09-30 17 views
6

jqueryリファレンスをマスターページに変更しようとしました。上記のエラーはInternet Explorerでのみ発生します。 FirefoxとChromeでエラーが表示されません。JavaScriptランタイムエラー:未定義またはnull参照のプロパティ 'msie'を取得できません

これは、エラーがスローされたjQueryのコードです:

return a.browser.msie?(b=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),c=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth),b<c?a(window).width()+"px":b+"px"):a(document).width()+"px"},resize:function(){var b=a([]);a.each(a.ui.dialog.overlay.instances,function() 

私は以下のマスタページを持っている:

<head id="Head1" runat="server"> 
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/redmond/jquery-ui.css" 
     type="text/css" /> 
    <asp:ContentPlaceHolder ID="ExtraHeadContent" runat="server"> 
    </asp:ContentPlaceHolder> 
</head> 


<form id="form2" runat="server"> 
    <asp:ScriptManager ID="ScriptManagerService" runat="server"> 
     <Scripts> 
      <asp:ScriptReference Path="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ScriptMode="Auto" /> 
      <asp:ScriptReference Path="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js" ScriptMode="Auto" /> 
     </Scripts> 
    </asp:ScriptManager> 
</form> 
</body> 

私は私がやっているために必要なものを教えてください? jqueryリファレンスをheadセクションに入れようとしましたが、aspxファイル内のjqueryコードが 'dialog'オブジェクトが定義されていないか 'tooltip'オブジェクトが定義されていないというエラーが出ているようです。私は、jqueryライブラリは、ヘッドセクションに参照を配置しようとするとロードされていないと思う。

答えて

18

jQuery.browserは、jQueryの1.9でremovedてきた(そして、あなたは1.10を使用)、そのオブジェクトとしてそれを処理しようとするが(すなわち、そのmsieプロパティにアクセス)は失敗する運命にあります。まだ使用したい場合は、jQuery migrateプラグインをjQueryと一緒に含めてください。

+1

こんにちはraina770wありがとう! jquery.browserコードを更新されたバージョンに変更したいと思います。私が何をすべきか教えてください。私のコードは新しいリファレンスを追加せずに動作するようになりました。ありがとうございます! – CodeNinja

+0

@Courage raina77owの答えにリンクされているjQuery APIページごとに、jQuery migrateプラグインを使用する方法が唯一のようです。 "このプロパティはjQuery 1.9で削除され、jQuery.migrateプラグインを介してのみ利用できます。代わりに機能の検出を試みてください。" – Itison

+0

ドキュメントにロードされたjquery migrateでエラーが発生する –

1

プロジェクト内の特定のリンクからライブラリを追加してください。

http://code.jquery.com/jquery-migrate-1.2.1.js

または

リンクの下の登録ページで

<script type="text/javascript" src="code.jquery.com/jquery-migrate-1.2.1.js"></script> 
+0

src = " –

+0

"の後にhttp://を追加する必要があります。 – John

3

私は1.11.3にjqueryの-UIを更新し、問題が去っていきました。

0

jquery-browser-pluginは、$ .browserオブジェクトを提供するようになりました。 $ .browser.msieを含む

関連する問題