Я использую jQuery для настройки некоторых радиокнопок. У меня есть две разные стили радиокнопок, поэтому вы увидите два оператора if, которые ищут эти два разных класса.
Проблема, с которой я постоянно сталкиваюсь, заключается в том, что скрипт отлично работает во ВСЕМ, кроме Internet Explorer. К сожалению, компания, в которой я работаю, назвала IE8 отраслевым стандартом для всех веб-сайтов, поэтому все, что выходит, ДОЛЖНО работать с IE8.
Я отправляю вам мой код
HTML для радиокнопки 1
<label class="label_radio-STD happy" for="happy3"><input id="happy3" name="q3" type="radio" value="YES"/></label>
<label class="label_radio-STD meh" for="meh3"><input id="meh3" name="q3" type="radio" value="INDIFFERENT"/></label>
<label class="label_radio-STD sad" for="sad3"><input id="sad3" name="q3" type="radio" value="NO"/></label>
HTML для переключателя 2
<label class="label_radio" for="radio0">0<input id="radio0" name="q5" type="radio" value="0"/></label>
<label class="label_radio" for="radio1">1<input id="radio1" name="q5" type="radio" value="1"/></label>
><label class="label_radio" for="radio2">2<input id="radio2" name="q5" type="radio" value="2"/></label>
JQuery для запуска всего shaz-бота
<script>
function setupLabel() {
if ($('.label_check input').length) {
$('.label_check').each(function(){
$(this).removeClass('c_on');
});
$('.label_check input:checked').each(function(){
$(this).parent('label').addClass('c_on');
});
};
if ($('.label_radio input').length) {
$('.label_radio').each(function(){
$(this).removeClass('r_on');
});
$('.label_radio input:checked').each(function(){
$(this).parent('label').addClass('r_on');
});
};
if ($('.label_radio-STD input').length) {
$('.label_radio-STD').each(function(){
$(this).removeClass('s_on');
});
$('.label_radio-STD input:checked').each(function(){
$(this).parent('label').addClass('s_on');
});
};
};
$(document).ready(function(){
$('label').click(function(){
setupLabel();
});
setupLabel();
});
</script>
Я выдавал ALERTS в каждом утверждении IF, и они были хорошими, я бросал ALERTS в КАЖДЫЙ цикл, и они были хорошими. Раньше у меня была строка jQuery "$ ('body'). AddClass (" has-js ")" в качестве первой строки функции document.ready, но в теле html НИКОГДА не было класса has-js. Далее я посмотрел на код и понял, что он мне не нужен для кода, который я выполняю. Но меня все еще беспокоит, что $ ('body'). AddClass ("has-js") никогда не работал.
Может ли это быть так просто, как мой javascript для IE8 выключен?
Если да, могу ли я включить его для тех, у кого оно может быть отключено?