0

请原谅我不是最好的 JQuery 程序员,但我遇到了一个问题。我的 Jquery 在 FF/IE10 中完美运行,仅此而已。我不确定为什么,但这是我的代码。如果可能,请帮助!

文本框“custom-url”在加载时也不会 .hide,并且 .show 当下拉列表更改为选项“custom”时,就像在其他浏览器上一样。

我目前正在使用 jquery-1.5.1,这是我的文本框的 html:

<input type="text" id="custom-url" style="width:220px;"/>

下一部分仅特定于当前页面,因此它被导入到使用它的页面中。

<script type="text/javascript">

    $(document).ready(function () {
        "use strict";
        $("#custom-url").hide();
    });

    $("select#url-list").change(function () {
        "use strict";
        var selectedItem = $("option:selected", $(this)),
        selectedValue = selectedItem.val();
        $("#url").val(selectedValue);
        if (selectedValue === "custom") {
            $("#custom-url").show();
        } else {
            $("#custom-url").hide();
        }
    });

    $("form").submit(function () {
        "use strict";
        var selectedItem = $("select#url-list option:selected"));
        var selectedvalue = selectedItem.val();
        if (selectedvalue === "custom") {
            $("#Url").val($("#custom-url").val());
        } else if (selectedvalue === '') {
        } else {
            $("#Url").val(selectedItem.val());
        }
    });

</script>

下一部分是全局特定的,因此它被导入到 master 中。

<script src="@Url.Content("~/Scripts/MyScripts.js")" type="text/javascript"></script>

   $(document).ready(function () {
         var str = $('iframe').attr('src');
         var substr;
         var current_tab = "";

         $("#topNav ul:first-of-type li:last-child").hover(function () {
             $(this).addClass("elementHovered");

         }, function () {
             $(this).removeClass("elementHovered");
         });


         if (str == undefined) {
            // alert($("ul:first-of-type li:last-child").parent().html());

              current_tab = "Admin";

              $("#topNav ul:first-of-type li:last-child").children().addClass("elementHovered");             

         }
         else {


             substr = str.split('/');
             var str = "";
             var i;
             for (i = 0; i < substr.length; ++i) {
                 str = str + "subtri[" + i.toString() + "]" + substr[i] + "         ";
             }



             $('#topNav ul:first-of-type').children('li').each(function () {
                 if (substr[2] == "prototype.sunoconet2012.com") {
                     current_tab = "Documents";
                 }
                 else if (substr[3] == "admin") {
                     current_tab = "Home"
                 }
                 else {
                     switch (substr[1]) {

                         case 'contracts':
                             current_tab = "Account Information"
                             break;
                         case 'financials':
                             current_tab = "Financial"
                             break;
                         case 'pricing':
                             current_tab = "Pricing"
                             break;
                         case 'operations':
                             current_tab = "Operations";
                             break;
                         case 'support':
                             current_tab = "Support"
                             break;
                         case 'admin':
                             current_tab = "Support"
                             break;
                         case 'SunocoUniversity':
                             current_tab = "Training";
                             break;
                         case 'onlinetraining':
                             current_tab = "Training";
                             break;
                         default:
                             current_tab = "Administration";
                             break;
                     }
                 }

                 if (current_tab == $(this).text()) {
                    // alert("current_tab:  " + current_tab + "    this.text:  " + $(this).text());
                     //    alert("substr[1]      = " + substr[1] + "substr[2]      = " + substr[2] + " substr[3]      = '" + substr[3] + "'  current_tab    = " + current_tab + "  $(this).text() = " + $(this).text()); // "this" is the current element in the loop
                     $(this).children().css("background-color", "#4D77A7");
                     $(this).children().css("color", "white");
                 }
             });
         }

     });
4

1 回答 1

0

更新到 Jquery 1.9.1 就成功了!

于 2013-03-20T17:00:19.427 回答