74

msdropdown イメージ コンボ ボックスを使用してドロップダウン選択オプションを作成しています。このコードを PC でローカルに実行すると、すべてうまくいきます。しかし、Go Daddy サーバーで実行すると、msdropdown が無効になります。

どのブラウザでも動作しません。Firebug は次のようにエラーを表示します。

TypeError: $.browser is undefined

これで私を助けてください。

 echo <<<_START
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
 <title>profile</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="HAPedit 3.1">
<link rel="stylesheet" href="profile.css" type="text/css">
<link rel="stylesheet" type="text/css" href="dd.css" />
<link rel="stylesheet" href="javascript/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.0.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.0.js"></script>
<script type="text/javascript" src="jQuery.js"></script>
<script src="javascript/jquery-ui.js"></script>
<script type="text/javascript" src="javascript/drop.js"></script>
<script src="jquery.dd.min.js"></script>
<script type="text/javascript" src="jquery.blockUI3.js"></script>
<script type="text/javascript" src="javascript/req.js"></script>
<link rel="stylesheet" href="css/body.css" />
<script>
$(function() {
$( "#datepicker" ).datepicker({dateFormat: 'dd-mm-yy', minDate: 0, maxDate: "+0M +5D"       
 });
});
</script>
<script type="text/javascript">
    <!--
        function otherSelect() {
            var other = document.getElementById("otherBox");
            if    (document.getElementById("form3").place.options[document.getElementById("form3").place.selectedIndex].value == "other") {
                other.style.visibility = "visible";
            }
            else {
                other.style.visibility = "hidden";
            }
        }
    //-->
</script>
</head>

<body id="body">

 <div id="container">
<div class="header">
<a href="profile.php" class="logo">
    <img title="Title" alt="Alter" src="images/logo.png" border="0" height="60px"  width="200px">
</a>
<a style="text-decoration:none; margin-top:15px; font-family:Bookman Old Style;  font-size:12px; color:#FFFFFF; font-weight:bold;" href="logout.php?id='$session_id'"  class="req">
Logout
</a>
<a href="notification.php?email='$encrypted_string'" class="req1">
<img border="0" title="Notifications" alt="Notifications" src="images/notification.png" height="60px" width="60px"><div class="text1">$numbr</div>
</a>
<a href="request.php?email='$encrypted_string'" class="req2">
<img border="0" title="requests" alt="Requests" src="images/request.png" height="60px" width="60px"><div class="text">$req</div>
</a>
</div>

<div id="navigation">
<div id="picture"><img src="$img">
<h1 id="display" style="margin-left:30px;">$name</h1><hr>
<table style="background-color:#81F781;font-family:Chaparral Pro,corbel; font-   size:17px; color:#1C1C1C; width:100%;" border="1" cellpadding="25">
<tr><th>Requests($n)</th></tr></table>
</div>
</div></div>
<div style="margin-top: 90px;" id="conte">

_START;


 echo <<<_START
 </div>
 <div id="accept" style="display:none">
<form method="post" id="form3" action="cnfrm.php">
<br><table border="0" style="width:100%;" cellspacing="4" cellpadding="4"><tr>    <td  style="font-family:Chaparral Pro,corbel; font-size:17px; color:#1C1C1C;">Meeting Date:   <input type="text" id="datepicker" name="date"/></td>
<td style="font-family:Chaparral Pro,corbel; font-size:17px; color:#1C1C1C;">@ about<input  type="text" id="time" size="3">AM<input type="radio" name="time2" id="time2" value="am"> |   PM<input type="radio" name="time2" id="time2" value="pm"></td></tr>
_START;

echo <<<H
<tr><td valign="top" rowspan="2">
<select id="place" name="place" style="width:300px;" onchange="otherSelect()">
    <option value="" data-description="Choose your meeting place"  selected="selected">Meet me @</option>
    <option value="LC" data-image="image/msdropdown/icons/meet.png" data-description="Limbdi Corner">L.C</option>
    <option value="VT" data-image="image/msdropdown/icons/meet.png" data-description="Vishwanath temple">V.T</option>
    <option value="H.G" data-image="image/msdropdown/icons/meet.png" data-description="Hyderabaad Gate">H.G</option>
    <option value="D.G Corner" data-image="image/msdropdown/icons/meet.png" data-description="Dhanrajgiri Corner">D.G corner</option>
    <option value="Library" data-image="image/msdropdown/icons/meet.png" data-description="IIT Library">Library</option>
    <option value="other" data-image="image/msdropdown/icons/meet.png" data-description="Add your own...">Other place</option>
</select> </td></tr>
H;

この問題は解決されました: msdropdown を更新し、最新のファイルをダウンロードします。

みんな、ありがとう

4

10 に答える 10

147

$.browser コードを js に入れるだけです

var matched, browser;

jQuery.uaMatch = function( ua ) {
    ua = ua.toLowerCase();

    var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
        /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
        /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
        /(msie) ([\w.]+)/.exec( ua ) ||
        ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
        [];

    return {
        browser: match[ 1 ] || "",
        version: match[ 2 ] || "0"
    };
};

matched = jQuery.uaMatch( navigator.userAgent );
browser = {};

if ( matched.browser ) {
    browser[ matched.browser ] = true;
    browser.version = matched.version;
}

// Chrome is Webkit, but Webkit is also Safari.
if ( browser.chrome ) {
    browser.webkit = true;
} else if ( browser.webkit ) {
    browser.safari = true;
}

jQuery.browser = browser;
于 2013-07-05T18:39:28.253 に答える
45

$.browserJQuery 1.9 から削除されました。代わりにModernizrプロジェクトを使用できます

http://jquery.com/upgrade-guide/1.9/#jquery-browser-removed

IE 10 および IE 11 (TRIDENT バージョン) をサポートするための更新

@daniel.mouraの回答を完了するために、IE 11および+をサポートするバージョンを次に示します

var matched, browser;

jQuery.uaMatch = function( ua ) {
    ua = ua.toLowerCase();

    var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
        /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
        /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
        /(msie)[\s?]([\w.]+)/.exec( ua ) ||       
        /(trident)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
        ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
        [];

    return {
        browser: match[ 1 ] || "",
        version: match[ 2 ] || "0"
    };
};

matched = jQuery.uaMatch( navigator.userAgent );
//IE 11+ fix (Trident) 
matched.browser = matched.browser == 'trident' ? 'msie' : matched.browser;
browser = {};

if ( matched.browser ) {
    browser[ matched.browser ] = true;
    browser.version = matched.version;
}

// Chrome is Webkit, but Webkit is also Safari.
if ( browser.chrome ) {
    browser.webkit = true;
} else if ( browser.webkit ) {
    browser.safari = true;
}

jQuery.browser = browser;
// log removed - adds an extra dependency
//log(jQuery.browser)
于 2013-02-10T13:51:50.283 に答える
25

次の html をコードに配置すると、$.browser エラーが解消されました

<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>

これがあなたを助けることを願っています

于 2014-03-29T04:54:00.240 に答える
8

jquery ファイルを次のものに置き換えます。

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script> <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>

于 2015-08-19T15:33:20.433 に答える
7

$().live(関数(){}); jQuery.browser は jquery 1.9.0 では定義さ れていません - $.browser は jquery update で廃止されました

Godaddy で別のバージョンの jquery 1.9 を使用しているように聞こえるので、コードを変更するか、移行プラグインhttp://code.jquery.com/jquery-migrate-1.0.0.jsを含めます。

于 2013-02-10T13:53:09.560 に答える
3

以下に指定されたjQuery移行リンクを使用して解決しました:

<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>
于 2014-07-15T05:27:27.673 に答える
2

コードまたは jQuery プラグインのどこかで$.browser、現在のブラウザーの種類を取得するために呼び出しています。

ただし、早い段階$.browser機能が廃止されました。それ以来、いくつかのバグが報告されましたが、非推奨であるため、jQuery チームはそれらを修正しないことを決定しました。この関数にはまったく依存しないことにしました。

あなたのコードには への参照が見当たらない$.browserので、問題はおそらくあなたのプラグインの 1 つにあります。それを見つけるには、<script>タグで参照した各プラグインのソース コードを調べます。

それを修正する方法については、コンテキストによって異なります。たとえば、問題のあるプラグインの更新バージョンがある可能性があります。または、同様のことを行うが に依存しない別のプラグインを使用することもできます$.browser

于 2013-02-10T13:55:02.967 に答える
0

Wordpress 8.5.1 では、このプラグイン「Enable jQuery Migrate Helper」をインストールしました。

そして、問題なく動作しました。

于 2021-10-07T16:51:19.247 に答える