Мы должны больше поддерживать IE6? [закрытый]

Редактировать:

Ниже приведена жизнеспособная замена для jQuery ready

function ready(callback){
    // in case the document is already rendered
    if (document.readyState!='loading') callback();
    // modern browsers
    else if (document.addEventListener) document.addEventListener('DOMContentLoaded', callback);
    // IE <= 8
    else document.attachEvent('onreadystatechange', function(){
        if (document.readyState=='complete') callback();
    });
}

ready(function(){
    // do something
});

Взято из https://plainjs.com/javascript/events/running-code -when-the-document-is-ready-15 /


Поскольку принятый ответ был очень далек от завершения, я сшил вместе «готовую» функцию, такую ​​как jQuery.ready() на jQuery 1.6.2 source:

var ready = (function(){

    var readyList,
        DOMContentLoaded,
        class2type = {};
        class2type["[object Boolean]"] = "boolean";
        class2type["[object Number]"] = "number";
        class2type["[object String]"] = "string";
        class2type["[object Function]"] = "function";
        class2type["[object Array]"] = "array";
        class2type["[object Date]"] = "date";
        class2type["[object RegExp]"] = "regexp";
        class2type["[object Object]"] = "object";

    var ReadyObj = {
        // Is the DOM ready to be used? Set to true once it occurs.
        isReady: false,
        // A counter to track how many items to wait for before
        // the ready event fires. See #6781
        readyWait: 1,
        // Hold (or release) the ready event
        holdReady: function( hold ) {
            if ( hold ) {
                ReadyObj.readyWait++;
            } else {
                ReadyObj.ready( true );
            }
        },
        // Handle when the DOM is ready
        ready: function( wait ) {
            // Either a released hold or an DOMready/load event and not yet ready
            if ( (wait === true && !--ReadyObj.readyWait) || (wait !== true && !ReadyObj.isReady) ) {
                // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
                if ( !document.body ) {
                    return setTimeout( ReadyObj.ready, 1 );
                }

                // Remember that the DOM is ready
                ReadyObj.isReady = true;
                // If a normal DOM Ready event fired, decrement, and wait if need be
                if ( wait !== true && --ReadyObj.readyWait > 0 ) {
                    return;
                }
                // If there are functions bound, to execute
                readyList.resolveWith( document, [ ReadyObj ] );

                // Trigger any bound ready events
                //if ( ReadyObj.fn.trigger ) {
                //    ReadyObj( document ).trigger( "ready" ).unbind( "ready" );
                //}
            }
        },
        bindReady: function() {
            if ( readyList ) {
                return;
            }
            readyList = ReadyObj._Deferred();

            // Catch cases where $(document).ready() is called after the
            // browser event has already occurred.
            if ( document.readyState === "complete" ) {
                // Handle it asynchronously to allow scripts the opportunity to delay ready
                return setTimeout( ReadyObj.ready, 1 );
            }

            // Mozilla, Opera and webkit nightlies currently support this event
            if ( document.addEventListener ) {
                // Use the handy event callback
                document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false );
                // A fallback to window.onload, that will always work
                window.addEventListener( "load", ReadyObj.ready, false );

            // If IE event model is used
            } else if ( document.attachEvent ) {
                // ensure firing before onload,
                // maybe late but safe also for iframes
                document.attachEvent( "onreadystatechange", DOMContentLoaded );

                // A fallback to window.onload, that will always work
                window.attachEvent( "onload", ReadyObj.ready );

                // If IE and not a frame
                // continually check to see if the document is ready
                var toplevel = false;

                try {
                    toplevel = window.frameElement == null;
                } catch(e) {}

                if ( document.documentElement.doScroll && toplevel ) {
                    doScrollCheck();
                }
            }
        },
        _Deferred: function() {
            var // callbacks list
                callbacks = [],
                // stored [ context , args ]
                fired,
                // to avoid firing when already doing so
                firing,
                // flag to know if the deferred has been cancelled
                cancelled,
                // the deferred itself
                deferred  = {

                    // done( f1, f2, ...)
                    done: function() {
                        if ( !cancelled ) {
                            var args = arguments,
                                i,
                                length,
                                elem,
                                type,
                                _fired;
                            if ( fired ) {
                                _fired = fired;
                                fired = 0;
                            }
                            for ( i = 0, length = args.length; i < length; i++ ) {
                                elem = args[ i ];
                                type = ReadyObj.type( elem );
                                if ( type === "array" ) {
                                    deferred.done.apply( deferred, elem );
                                } else if ( type === "function" ) {
                                    callbacks.push( elem );
                                }
                            }
                            if ( _fired ) {
                                deferred.resolveWith( _fired[ 0 ], _fired[ 1 ] );
                            }
                        }
                        return this;
                    },

                    // resolve with given context and args
                    resolveWith: function( context, args ) {
                        if ( !cancelled && !fired && !firing ) {
                            // make sure args are available (#8421)
                            args = args || [];
                            firing = 1;
                            try {
                                while( callbacks[ 0 ] ) {
                                    callbacks.shift().apply( context, args );//shifts a callback, and applies it to document
                                }
                            }
                            finally {
                                fired = [ context, args ];
                                firing = 0;
                            }
                        }
                        return this;
                    },

                    // resolve with this as context and given arguments
                    resolve: function() {
                        deferred.resolveWith( this, arguments );
                        return this;
                    },

                    // Has this deferred been resolved?
                    isResolved: function() {
                        return !!( firing || fired );
                    },

                    // Cancel
                    cancel: function() {
                        cancelled = 1;
                        callbacks = [];
                        return this;
                    }
                };

            return deferred;
        },
        type: function( obj ) {
            return obj == null ?
                String( obj ) :
                class2type[ Object.prototype.toString.call(obj) ] || "object";
        }
    }
    // The DOM ready check for Internet Explorer
    function doScrollCheck() {
        if ( ReadyObj.isReady ) {
            return;
        }

        try {
            // If IE is used, use the trick by Diego Perini
            // http://javascript.nwbox.com/IEContentLoaded/
            document.documentElement.doScroll("left");
        } catch(e) {
            setTimeout( doScrollCheck, 1 );
            return;
        }

        // and execute any waiting functions
        ReadyObj.ready();
    }
    // Cleanup functions for the document ready method
    if ( document.addEventListener ) {
        DOMContentLoaded = function() {
            document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
            ReadyObj.ready();
        };

    } else if ( document.attachEvent ) {
        DOMContentLoaded = function() {
            // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
            if ( document.readyState === "complete" ) {
                document.detachEvent( "onreadystatechange", DOMContentLoaded );
                ReadyObj.ready();
            }
        };
    }
    function ready( fn ) {
        // Attach the listeners
        ReadyObj.bindReady();

        var type = ReadyObj.type( fn );

        // Add the callback
        readyList.done( fn );//readyList is result of _Deferred()
    }
    return ready;
})();

Как использовать:


Я не уверен, насколько функциональен этот код, но он отлично работал с моими поверхностными тестами. Это потребовалось довольно долгое время, поэтому я надеюсь, что вы и другие могут извлечь из этого выгоду.

PS: Я предлагаю компилировать его.

Или вы можете использовать http://dustindiaz.com/smallest-domready-ever :

function r(f){/in/.test(document.readyState)?setTimeout(r,9,f):f()}
r(function(){/*code to run*/});

или встроенная функция, если вам нужно только поддерживать новые браузеры (в отличие от jQuery ready, это не будет работать, если вы добавите это после загрузки страницы)

document.addEventListener('DOMContentLoaded',function(){/*fun code to run*/})

15
задан liut0 9 July 2014 в 06:09
поделиться

35 ответов

Это зависит так от контекста приложения, и его пользователей. Существует два ключевых аспекта: какие браузеры являются Вашими пользователями, использующими; и насколько важный это, что они могут получать доступ/взаимодействовать с Вашим сайтом.

первая часть, обычно легко устанавливают, , если у Вас есть существующая версия со статистикой (Аналитика Google, или подобный является простым и большим), или у Вас есть доступ к таким данным из подобного приложения / продукт.

позже немного более твердо решить. При разработке публично доступного, спонсируемого рекламой сайта для exmple это - просто игра чисел - удаются, сколько из аудитории Вы теряете и фактор, что это стоит против дополнительного времени разработки. Однако при выполнении чего-то конкретно по требованию группы пользователей - как веб-приложение предприятия, например - можно застрять с тем, с чем просматривают те пользователи.

, По моему опыту, те две вещи могут значительно измениться для различных приложений. У нас есть веб-приложения все еще (статистика с прошлой недели) с близко к 70%-му использованию IE6 (20%-й IE7, остальные разделение между IE5.5 и FF2) и другие с близко к 0%-му IE6. Для относительно ovbivous причины, последние являются видом приложений, где потеря нескольких пользователей не так важна.

сказавший все это, нам обычно легко поддерживать IE6 (и IE5.5, как другие указывают), просто, потому что мы делали так некоторое время. Да, это - боль и да, требуется больше времени, но часто не слишком много. Существует очень немного ситуаций, где необходимость поддерживать IE6 решительно изменяет, какую добрую разработку Вы делаете - это просто означает немного больше работы. Другое хорошее преимущество поддержки его (и тестирование на него) - то, что Вы обычно заканчиваете тем, что делали лучше всесторонний браузер и тестирование причуд в результате полярности поведений IE6.

необходимо решить, как ли Вы, предполагается, находите обходные решения, на основе требований Вашего приложения/продукта. Это, это - IE6, не действительно настолько релевантно - этот вид проблемы происходит все время в других ситуациях, это именно так происходит, что IE6 является ярким примером затрат и последствиями смешанных стандартов, управления версиями и поддержки прежней версии.

15
ответ дан 30 November 2019 в 23:57
поделиться

Dean Edwards ie7.js заставляет IE6 вести себя (главным образом) как респектабельный веб-браузер. Это требует, чтобы клиент включил JavaScript, но это - разумная концессия для создания. Я использую тот сценарий, и сценарий от Сохраняют Разработчиков на сайтах, которые я создаю, и он делает поддержку IE6 бриз.

0
ответ дан 30 November 2019 в 23:57
поделиться

Было бы хорошо, если мы могли бы отклонить поддержку ужасно несовместимых браузеров. Проблема, отклонение поддержка IE повреждает Ваш сайт, причиняет Вашим возможным пользователям боль, но не повреждает IE. Это - примечание точно, для чего мы идем. Я предлагаю другую технику. Что, если все разработчики анти-IE, помещенные ", Прекращают использовать Ваш дрянной браузер" экран-заставка для всего IE (6) пользователи, получающие доступ к их веб-сайту. Они могли обеспечить несколько хороших, простых причин переключиться, что пользователь не может проигнорировать, но затем позволить пользователю доступу (совместимый IE) сайт. Тем путем они могли понять через, не причиняя боль себе (очень) или пользователю (кроме немного).

0
ответ дан 30 November 2019 в 23:57
поделиться

Это зависит от Вашей целевой аудитории и если Вы думаете, что можно позволить себе отчуждать пользователей. Если Вы делаете гиковское веб-приложение, и Вы думаете, что большинство пользователей будет использовать Firefox, то не волнуйтесь о IE6. Я запустился бы с ним работающий в Firefox, IE7, и Safari и взгляде на то, кто переходит к Вашему сайту. Если Вы видите потребность сделать, она работать в IE6 затем начинает работать над ним затем.

0
ответ дан 30 November 2019 в 23:57
поделиться

Заметьте, что у некоторых пользователей на Предприятии нет выбора. Таким образом, при предназначении для Корпоративных клиентов заметьте, что они находятся все еще на IE6. В целом Предприятие перемещается медленнее, чем потребитель.

0
ответ дан 30 November 2019 в 23:57
поделиться

зависит от Вашей целевой аудитории.. Я имею в виду, некоторые университеты имеют Firefox на них, правильно? только (я думаю), страны третьего мира имеют IE6 для значения по умолчанию. (Я знаю, я вижу их), я не знаю о других странах, все же. Но я вполне уверен все еще, большой блок населения все еще использует IE6 по умолчанию. Если Вы думаете, что это действительно необходимо (я думаю так), идти вперед. Я не вижу проблемы в нем. ('cuz я неопытен в разработке программного обеспечения и таком.. XD)

0
ответ дан 30 November 2019 в 23:57
поделиться

Я - все для продвижения пользователей обновить до новейшей доступной версии IE (так как проблемы улучшаются с каждым выпуском), однако я также против говорящих людей, чтобы обновить или изменить их браузеры.

я все еще поддерживаю IE6 на своем веб-сайте. Я даже еще поддерживаю IE5.5 вполне прилично, я думаю.

Обычно это - хорошая практика, чтобы никогда не вынудить Ваших пользователей обновить свою систему только для просмотра веб-сайта. Если, конечно, Вы не разрабатываете внутреннее приложение, затем я сказал бы, что все должны обновить до новейшей доступной версии.

0
ответ дан 30 November 2019 в 23:57
поделиться

Поддерживайте IE6, не блокируя его и позволяя ему сопротивляться для себя по большей части. Только работа вокруг ошибок IE6, которые повреждают главную функциональность.

Что касается ошибок JS и ужасной поддержки DOM, у Вас все еще есть это в IE7 и IE8. В этом случае Вы могли бы также использовать инструментарий JS и получить поддержку IE6 почти свободного.

Ошибки являются ошибками, и они должны быть зафиксированы (в любом браузере) вместо того, чтобы работаться вокруг. Но, необходимо сделать то, что необходимо сделать для угождения посетителей.

Однажды, работающий вокруг ошибок IE6 будет спрашивать слишком много.

0
ответ дан 30 November 2019 в 23:57
поделиться

Я, конечно, настроен против исключения браузеров от общедоступного сайта. Нет ничего более раздражающего, чем движение к веб-сайту и обнаружение, что они ТОЛЬКО поддерживают IE, потому что некоторый dev где-нибудь не мог заставить вещи "работать".

, Поскольку многие из других авторов выше отметили, что существует значительное число пользователей там, которые используют наложенную настольную сборку компании или установку IE6. Ваш лучший выбор состоит в том, чтобы всегда идентифицировать и общаться с Вашими пользователями, не налагать Ваши драконовские понятия на них.

Ryan Farley имел запись об этом недавно , который описывает то, что я думаю, лучший первый шаг к переходу по пользователям к другому браузеру. Это поощряет людей обновлять и объясняет, почему вещи не могут представить правильно в одной диаграмме. Много лет назад BinaryBonsai.com был первым блогом, с которым я встретился, который имел значок, появляются предлагающий FireFox, и я полностью загрузил его просто, чтобы не быть побеспокоенным дополнительной диаграммой.

действительно существует ничего как давление со стороны окружающих компьютерного фаната.

0
ответ дан 30 November 2019 в 23:57
поделиться

Я рекомендую, чтобы люди проверили свою собственную пользовательскую статистику на их сайт прежде, чем принять это решение, но вот общая ссылка относительно популярных версий браузера:

http://www.w3schools.com/browsers/browsers_stats.asp

3
ответ дан 30 November 2019 в 23:57
поделиться

Отказ Vista получить массовое принятие в основном ответственен по причине, мы все еще должны поддерживать IE6. Большинство людей, все еще использующих IE6, является теми, кто никогда не обновляет их браузер или обновляет их ОС. Если бы большинство из них просто переместилось в Vista, то IE7 автоматически заменил бы IE6

0
ответ дан 30 November 2019 в 23:57
поделиться

Зависит от ситуации. Сайт как это, было большинство людей, технарь, я думаю, что безопасно предположить, что у людей есть последние браузеры.

Однако, если Вы открыты для широкой общественности возможно не так обидчивые люди, у Вас, вероятно, будет IE6, поражающий Ваш сайт много.

2
ответ дан 30 November 2019 в 23:57
поделиться

К сожалению, не - я оценил бы меня как довольно обидчивый человек, и дома я использую Firefox 3 и IE7, но на работе (большой американский Pharma) я должен использовать IE6, и я не думаю, что это идет изменение в ближайшее время. Компания имеет значительные инвестиции во внутреннюю строку веб-приложений - экономическая модель для тестирования и обновления их всех против другого браузера (или даже обновление) не востребована.

1
ответ дан 30 November 2019 в 23:57
поделиться

Кто-то задал тот же вопрос приблизительно неделю назад и получил некоторые хорошие ответы. Мой любимый был предложение doekman для попытки IE7-js.

2
ответ дан 30 November 2019 в 23:57
поделиться

Это зависит от Вашей аудитории, и стоит ли стоимость (разработка, обслуживание, альтернативные издержки разработки к 7-летнему наименьшему общему знаменателю) того для получения тех средств просмотра IE6.

Также стоящий выяснения - действительно ли IE6 является демографическим, вероятно, чтобы заботиться об или использовать Ваш сайт? Я думаю, что большое количество пользователей IE6 не заботится о новой технологии (понятное дело) или получает доступ к сети от корпоративных сетей, которые ограничивают установки браузера. Возможно, те средства просмотра не стоят усилия - только можно ответить на это.

я был рад видеть, что Мобильный телефон Apple Меня сайт не будет поддерживать IE6.

5
ответ дан 30 November 2019 в 23:57
поделиться

Спросите своего клиента это: действительно ли они готовы обновить до Vista? Если они говорят да, то не поддерживайте IE6. Ваши целевые клиенты являются людьми, кто идет "стоп! перспектива. пускают слюни ". Они - также вид людей, которые хотят самый быстрый и самый мощный компьютер .

, Если Ваш клиент идет, "ха? что такое перспектива? Я хочу свою экранную заставку кошек назад", затем необходимо поддерживать IE6.

Короче говоря: если у них есть Vista, то у них нет IE6. Ирония: чтобы веб-разработчики наконец избавились от IE6 и его наследия, они должны продвинуть Vista или надеяться, что Vista будет успешна.

1
ответ дан 30 November 2019 в 23:57
поделиться

Время это для отказа с программированием IE6?

Да.

1
ответ дан 30 November 2019 в 23:57
поделиться

Я - кодер для группы, которая создает свободные шаблоны для играющих кланов. Наше представление состоит в том, что мы отбросим поддержку IE6, когда IE8 будет полностью выпущен. Но в конце дня, как многие люди заявили, это зависит от Вашей пользовательской аудитории. Наша целевая аудитория относительно широка (люди загружают и используют наши шаблоны в местах, где мы не можем предсказать) - однако это - прежде всего, геймеры, которые достаточно обычно умны усовершенствовать их программное обеспечение.

я нахожу свои естественные работы стиля кодирования в IE6 на моей первой попытке обычно, и ошибки достаточно легко выкорчевать поэтому, возможно, я не нахожу его так болью, как другие люди делают. Лично я отброшу поддержку IE6, когда это достигнет, это - конец жизни или полного выпуска IE8 - какой бы ни на первом месте.

1
ответ дан 30 November 2019 в 23:57
поделиться

Подход, предложенный Codebender, - единственный, который вы можете использовать. На самом деле это сделано намеренно - использование «ЧИСЛА» в качестве имени аргумента кажется микрооптимизацией, которую не стоит делать. Хорошее описание варианта должно также сказать, какой аргумент ожидается.

браузер со временем исчезнет. Это ложь.


Представьте себе:

Корпорация ACME имеет более 150 000 компьютеров, на которых установлена ​​ОС Windows 2000 / XP. У них также есть хороший интранет-сайт, разработанный 7 лет назад, который неплохо работает в IE6, но не так сильно в других браузерах.

Неужели вы думаете, что они собираются вкладывать деньги в исправление своего приложения во внутренней сети, когда они контролируют всю свою ИТ-инфраструктуру и кто какие обновления получает? Менее затратно просто отложить обновление до перехода на новую систему.

Многие корпорации находятся в такой ситуации.


Вот еще один пример:

Business FooBar продает свои продукты через Интернет. Чуть более четверти их трафика поступает из IE6, что также означает четверть их продаж.

Как вы думаете, FooBar просто заблокирует этих клиентов или рассердит их огромным уведомлением о том, что они используют браузер с ошибками ? Это будет стоить им почти четверть их продаж! Пока есть денежная ценность для поддержки IE6 (а это так и будет до тех пор, пока его доля на рынке не упадет ниже примерно 8%), IE6 будет преобладать, поэтому Google не откажется от поддержки IE6 в ближайшее время.


Такие кампании, как Browse Sad , не понимают менталитета корпоративной культуры (изменение стоит дорого) и не понимают, что в конечном итоге потребители имеют незначительное влияние на мировую ИТ-экосистему. Крупные корпорации контролируют это.

Потребители действительно имеют растущее влияние, но оно все еще незначительно по сравнению с влиянием, которое оказывают корпорации.

И давайте будем честными: все, у кого есть технический опыт и кто мог перейти на более качественный браузер, уже сделали это. Остальные - это люди, которые все еще используют устаревшие ОС, не знают, как их обновить, или не имеют прав администратора на своей машине.

1
ответ дан 30 November 2019 в 23:57
поделиться

If you're writing an application that's free or open to the public, maybe give reduced support to IE6 in order to have time to build more things for the majority of your users.

If you're writing an application that's not free, base it on your users. Odds are you'll want to give IE6 full support for another year or two.

0
ответ дан 30 November 2019 в 23:57
поделиться

My guess is the majority of IE6 users these days are due to a large number of companies/organizations that are stuck with illogical browser upgrade fear.

I work as a contractor for the US Government and, as of the time of this post, the entire Heath and Human Services department of the US government is still standardized on IE6 (and doesn't appear to be planning on upgrading anytime soon). When I ask the IT people about it, they claim it's too expensive for the government to test new browsers for compliance with security standards, but I get the sense the real reason is they are afraid of having to deal with things rendering differently across browsers.

1
ответ дан 30 November 2019 в 23:57
поделиться

К сожалению, нам все еще необходимо поддерживать IE6 в большинстве случаев, поскольку он по-прежнему составляет значительную часть пользователей интернет-серфинга. Если вы работаете в корпоративной среде, это еще более верно, поскольку у корпораций меньше стимулов обновлять вещи - они работают просто для каких-то «веб-стандартов».

Если нет, попробуйте использовать подход Gmail и просто выдавите сообщение об ошибке для зрителей IE6 и / или покажите заявление об отказе от ответственности, что если они обновятся, сайт будет работать / выглядеть лучше.

2
ответ дан 30 November 2019 в 23:57
поделиться

Возможно, вам стоит взглянуть на IE7.js .

IE7.js - это библиотека JavaScript, которая заставляет Microsoft Internet Explorer работать как совместимый со стандартами браузер. Он устраняет многие проблемы с HTML и CSS и обеспечивает правильную работу прозрачного PNG в IE5 и IE6.

Их IE9.js утверждает:

Обновите MSIE5.5-8 для совместимости с современными браузерами.

Я сам не тестировал это с помощью кислотных или других стандартных тестов, но это может быть многообещающим.

1
ответ дан 30 November 2019 в 23:57
поделиться

Все дело в том, чтобы приложить достаточно усилий, чтобы ваш сайт деградировал изящно по мере перехода на более старые и старые браузеры (или для пользователей с ограниченными возможностями). К сожалению, есть много пользователей IE6 и IE7, которые более или менее не могут перейти, поэтому кажется маловероятным, что ваш сайт заставит многих сделать это. Если ваш сайт просто плохо выглядит, это нормально. Если он непригоден для использования, у вас есть реальная проблема. В целом, чем больше вы придерживаетесь текущих стандартов (вместо того, чтобы просто гнаться за последними версиями браузеров), тем лучше вы будете работать в старых браузерах без дополнительных усилий.

20
ответ дан 30 November 2019 в 23:57
поделиться

В IE6 сделайте так, чтобы он хоть что-нибудь показывал. Страница для FF3, которая просто умирает в IE6, выглядит плохо, как будто вы плохо спланировали. Если вы вообще не поддерживаете IE6, убедитесь, что пользователь знает об этом намеренно, показав специальную страницу с советами, куда идти.

Если вы ожидаете корпоративных посетителей, он должен работать под IE6, даже если это только упрощенная версия. В противном случае вы можете полностью отказаться от IE6, если будете правильно с ним обращаться, как описано выше.

Тем не менее, время еще не готово рассматривать отказ от IE7. Я ожидал, что это браузер по умолчанию в XP, которая является наиболее распространенной ОС.

1
ответ дан 30 November 2019 в 23:57
поделиться

Если вы не хотите тратить усилия на поддержку своего сайта для IE6, вы можете использовать любой подход в приведенном ниже URL-адресе.

Эти подходы предлагают пользователю загрузить любой из расширенных браузеров, например IE7 +, Firefox 3+, Safari 3+, Opera 9.5+ или Google Chrome

http://garmahis.com/tools/ie6-update-warning /

Но это про IE6. Я считаю, что вы все равно должны поддерживать IE7.

1
ответ дан 30 November 2019 в 23:57
поделиться

Всегда помните о своей целевой аудитории, потребностях / требованиях клиентов, целях проекта и, конечно, сохраняйте их реальными (в соответствии с вашим бюджетом / временем)

Создайте код / ​​создайте сайт, который больше всего подходит браузеры - непростая задача, вам нужно будет использовать эти так называемые «хаки» для решения типичных проблем (да, в основном, в браузерах IE). Это то, что я лично не одобряю, но я был там, когда целью была в основном IE.

В настоящее время у вас есть несколько вариантов: вы можете определить, какой браузер используется для просмотра вашего сайта, и запустить скрипт, чтобы рекомендовать альтернативный браузер, который соответствует лучшим стандартам (с или без отображения разборчивого контента), или вы можете закодируйте альтернативную страницу входа для тех ребят из IE, или что (в большинстве случаев) я предпочитаю, так это изящно деградировать страницу и заставить пользователя узнать о его / ее устаревшем браузере и порекомендовать вариант.

Я читал, что вы используете CMS для создания этих сайтов, большинство CMS работают "нормально" в большинстве браузеров из коробки, хотя, как вы указали, некоторые элементы CSS и JavaScript не работают, поскольку вы используете более "острый" "техники.

Если вы намереваетесь разработать больше сайтов, позвольте мне порекомендовать следующие сайты:

Чтобы попробовать, как ваш сайт выглядит в нескольких браузерах (версии, ОС, JavaScript, Java и т. Д.)) вы можете использовать

http://browsershots.org/

Сравните ваши любимые варианты CMS попробуйте

http://www.cmsmatrix.org/

Чтобы начать изучение (x) html, css, php и других, вы можете перейти к

http://www.w3schools.com/

Хорошая таблица стилей сброса CSS - это Meyer's

http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/

У меня есть чтобы сказать, что это отправная точка для обеспечения согласованности архива между браузерами :)

Я уверен, что вы слышали или знаете, что эти сайты - всего лишь инструменты, которые я использую время от времени в поисках справочных материалов, новых знаний или альтернатив, я также могу рекомендую несколько расширений FF, таких как панель инструментов веб-разработчика и FireBug.

Думаю, на данный момент это все, надеюсь, это поможет и желаю вам удачного программирования / веб-разработки.

1
ответ дан 30 November 2019 в 23:57
поделиться

Здесь нет жесткого и быстрого правила. Поддержка IE6 и IE7 требует инвестиций времени и знаний, которых у вас может не быть, но с другой стороны, если вы хотите, чтобы ваш сайт выглядел так, как вы задумали, это инвестиции, которые должны быть сделаны. Поэтому возникает вопрос: что для вас важнее?

Вы говорите, что "если я проверю статистику страниц, я замечу, что почти половина посетителей использует этот тип браузеров", что говорит мне, что если вы не против того, что половина ваших посетителей видит что-то другое, чем дизайн/разметка, которую вы задумали, вам придется сделать эти инвестиции или обратиться за помощью к кому-то, кто может это сделать.

Если такой возможности нет, вы можете попробовать использовать некоторые "фреймворки" CSS, такие как Blueprint или Grid960, и посмотреть, не будет ли это проще, но это также потребует некоторого обучения.

Другие варианты: либо выбрать более простой дизайн, который будет работать во всех браузерах, либо удалить таблицу стилей для IE6/7 и позволить зрителям видеть необработанную структуру HTML-документа, либо использовать табличные макеты, если вы умеете ими пользоваться (и вопреки тому, что вам скажут некоторые люди, в этом пути нет ничего плохого, если он лучше всего соответствует требованиям вашего проекта в сочетании с ограничениями ваших возможностей и ресурсов).

4
ответ дан 30 November 2019 в 23:57
поделиться

Проблема в том, что если вы не хотите добавлять поддержку IE6 / 7, существует множество конкурентов, которые с радостью «украдут» ваших клиентов в обмен на небольшой взлом браузера. Пока есть деньги, поддержка этих браузеров будет постепенно прекращаться.

1
ответ дан 30 November 2019 в 23:57
поделиться

Да (категорически) и Нет (сомнительно).

Если только вы не создаете какой-то внутренний инструмент для группы, где вы знаете, что проникновение IE6 (без каламбура) велико; игнорируйте IE6. Энергично.

Что касается IE7, то это немного спорный вопрос. Вообще говоря, если вы нацелены на частный сектор, вы можете игнорировать его (по большей части) и полагать, что ваша поддержка IE8 позаботится о самых ужасных проблемах; но если это сайт для продажи товаров (в частности, веб-магазин, сайт с предложениями о продаже и т.д.), вы можете захотеть хотя бы проверить, что он выглядит в некоторой степени вменяемым, и добавить несколько небольших исправлений по мере необходимости.

В качестве отступления и реального примера: на моем месте работы (мы делаем веб-сайты) мы сейчас проходим (или, скорее, рассматриваем) изменения в отношении поддержки IE в целом: Цены указаны с базовой поддержкой IE8; полная поддержка IE8 будет стоить на ~10% больше; IE7 на ~30% больше и поддержка IE6 на ~100% больше.

Edit: Подумайте об этом, как о том, чтобы взимать дополнительную плату за то, чтобы универсал, предназначенный для WV, работал, соответственно, с pinto, yugo и конным экипажем.

1
ответ дан 30 November 2019 в 23:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: