Я написал кучу файлов jQuery для управления моим программным обеспечением. Мое программное обеспечение плохо спроектировано, и я решил сделать его намного лучше с помощью jQuery. JQuery работает в каждом браузере, кроме IE6-8. Несмотря на то, что для необоснованных браузеров существует резерв, IE6-8 составляет 25% от моего трафика, и я предпочел бы предложить 25% того же опыта, что и все остальные (IE8 составляет около 21%, так что это все, что мне действительно нравится о, IE6 & IE7 Мне все равно). Так вот пример некоторых из моего кода (Это все очень простой, у меня есть около 10 файлов, которые выглядят следующим образом):Проблемы с jQuery
$(document).ready(function(){
$('input#v65-product-wishlist-button').replaceWith('<input type="submit" id="v65-product-wishlist-button" class="graybutton" name="btnaddtowishlist" alt="Add to Wishlist" value="Add to Wishlist" title="Add this item to my Wishlist">');
$('td[background="v/vspfiles/templates/volusion/images/expand_tab_right.gif"]').remove();
$('td[background="v/vspfiles/templates/volusion/images/expand_tab_left.gif"]').remove();
$('td[background="v/vspfiles/templates/volusion/images/PBox_Opt_Back.gif"]').remove();
$('td[background^="v/vspfiles/templates/volusion/images/PBox_Border_"]').remove();
$('td img[src^="v/vspfiles/templates/volusion/images/PBox_Border_"]').parent().remove();
$('td[background^="v/vspfiles/templates/volusion/images/DBox_Border_"]').remove();
$('td img[src^="v/vspfiles/templates/volusion/images/DBox_Border_"]').parent().remove();
$('td img[src="v/vspfiles/templates/volusion/images/RBox_Border_Left_Top.gif"]').parent().closest("table").addClass('ReviewBox');
$('td img[src="v/vspfiles/templates/volusion/images/RBox_Border_Left_Top.gif"]').parent().remove();
$('input.vCSS_input_addtocart').after('<input type="submit" class="vCSS_input_addtocart blackbutton" name="btnaddtocart" alt="Add to Cart" value="Add to Cart" title="Add this item to my Cart">').remove();
$('img.vCSS_img_email_a_friend').replaceWith('<span id="graybutton">Email a Friend</span>');
$('img.vCSS_img_larger_photo').replaceWith('<span id="graybutton">Larger View</span>');
$('img.vCSS_img_history_off').replaceWith('<span id="blackbutton">Turn History Off</span>');
$('img.vCSS_img_history_clear').replaceWith('<span id="graybutton" class="mediumbutton">Remove</span>');
$("td#Header_ProductDetail_ProductDetails, td#Header_ProductDetail_TechSpecs, td#Header_ProductDetail_ExtInfo").removeAttr("background");
$('#Header_ProductDetail_ProductDetails').siblings("td[width='90%']").remove();
$('img.vCSS_img_icon_free_shipping').replaceWith('<span class="freeshipping">This item qualifies for Free Shipping!</span>');
$('img[src="v/vspfiles/templates/volusion/images/buttons/btn_reviews_yes.gif"]').replaceWith('<span id="graybutton" class="smallbutton">Yes</span>');
$('img[src="v/vspfiles/templates/volusion/images/buttons/btn_reviews_no.gif"]').replaceWith('<span id="graybutton" class="smallbutton">No</span>');
$('img[src="v/vspfiles/templates/volusion/images/Icon_Help_Options.gif"]').replaceWith('<span class="optionshelp"><sup>?</sup></span>');
$('img.vCSS_img_line_group_features').remove();
$('img.vCSS_img_heading_history').after('<span class="title">Recently Viewed</span>').remove();
$("td").filter(function() { return $(this).html() === ' '; }).remove();
$('table.ReviewBox tbody tr td table tbody tr td i:contains("By:")').each(function(){
$(this).html($(this).html().split("By:").join(""));
});
$('input[type="checkbox"], input[type="radio"]').after("<span />");
$(function() {
if ($("div#ProductDetail_ProductDetails_div2 table tbody tr").text().trim() == '') {
$("div#ProductDetail_ProductDetails_div2").css("border", "0px");
$("div#ProductDetail_ProductDetails_div").css({'border-bottom-left-radius' : '5px', '-moz-border-bottom-left-radius' : '5px', '-webkit-border-bottom-left-radius' : '5px', 'border-bottom-right-radius' : '5px', '-moz-border-bottom-right-radius' : '5px', '-webkit-border-bottom-right-radius' : '5px'});
}
});
});
Около половины этого сценария работы. Некоторые функции удаления и некоторые функции замены работают нормально. Но большая часть этого не делает.
Я попытался проверить это на jsFiddle. Он работал бы в IE8, но не IE6 & IE7, что идеально. Я просто не понимаю, почему это не сработает на моем сайте. Будет ли иметь значение, если JavaScript встроен или вызывается в файле? В настоящее время все мои JS вызывается из файлов между тегами <head>
. Я могу перемещать или изменять что-либо, кроме jQuery. Я не могу обновить jQuery и не могу его переместить. Что меня больше беспокоит, так это то, что на моем другом сервере с теми же файлами и тем же jQuery он работает! Но это мне не помогает, мне нужно, чтобы он работал на этом сервере.
Вы очистили свой кеш? – Evan
Этот разбор анти-IE бесполезен. Вы пытались заглянуть в консоль отладки IE? –
Просьба привести пример, который не работает на jsfiddle.net – gotofritz