Я пытаюсь использовать jQuery UI для анимирования перехода по форме, а код работает правильно в Firefox и Chrome, в IE8 возникает ошибка Javascript.jQuery UI switchClass не работает под IE8
Я использую JQuery-UI-1.8.2.custom.min.js и выдаваемая ошибка является:
Message: 'end.0' is null or not an object - Line: 819 - Char: 6
Мой CSS:
.formfield {
background-color: White;
border: none;
padding: 5px;
width: 90%;
overflow: hidden;
margin: 0px;
}
.formfieldselected {
background-color: MintCream;
border: none;
padding: 5px;
margin: 0px;
overflow: hidden;
}
Javascript:
$(document).ready(function()
{
$(":input").each(function()
{
var myInput = $(this);
if (this.type == 'submit')
{
return;
}
myInput.bind('focusin', function()
{
$('#' + this.id + 'field').removeAttr('style'); // Reset Style if broken
$('#' + this.id + 'field').switchClass('formfield', 'formfieldselected', 300);
$('#' + this.id + 'helpbox').removeClass('helpboxhidden').addClass('helpboxvisible');
});
myInput.bind('focusout', function()
{
$('#' + this.id + 'field').switchClass('formfieldselected', 'formfield', 300);
$('#' + this.id + 'helpbox').removeClass('helpboxvisible').addClass('helpboxhidden');
});
});
...
}
И, наконец, один из элементов, над которым этот код должен работать:
<DIV id="eventnamefield" class="formfield">
<DIV id="eventnamehelpbox" class="helpboxhidden">
This name is used throughout the system to refer to this event and is shown to Attendees
</DIV>
<label for="eventname" class="adminformlabel">Event Name:</label>
<br />
<input type="text" name="eventname" value="" id="eventname" maxlength="50" class="adminforminput" />
</DIV>
Извините за фиктивный ответ, который я удалил. Я полностью не понял ваш код :-) Однако я могу предложить вам открыть IE8 «Инструменты разработчика», и пусть отладчик покажет вам больше об ошибке. – Pointy
@Pointy Все, что говорит мне, что ошибка где-то в jQuery UI сама. и что b.end действительно установлен в Undefined. Кроме того, я думаю, что это происходит, возможно, во время некоторой попытки изменить размер объекта. – Nidonocu
А, это боль, когда это происходит. Возможно, однако вы можете найти трассировку стека и найти что-то в своем коде. Библиотеки jQuery не слишком осторожны в обработке таких ошибок, я подозреваю, что по соображениям производительности. – Pointy