2014-08-28 2 views
1

Я использовал класс css 'ui-disabled' для отключения входов в jQuery mobile, и он отлично работал во всех основных браузерах, но с выпуском IE11, заметив, что все входы (кроме текста), включая кнопки привязки, можно кликать/изменять даже с классом «ui-disabled».IE11 не подчиняется классу ui-disabled jquery mobile

Я использую jQuery mobile 1.3.2 для Windows 7, но, видимо, проблема возникает и на машинах Windows 8.

Любая идея или обходной путь для устранения этой проблемы?

HTML:

<a href="#" id="btn" data-role="button" data-theme="b">Button</a> 

<a href="#" id="clickMe" data-role="button">Click Me</a> 

Javascript:

$('#clickMe').on("click", function(){ 
    if (!($('#btn').hasClass('ui-disabled'))){ 
    $('#btn').addClass('ui-disabled'); 
    } 
}) 

$('#btn').on("click", function(){ 
alert("Button was clicked"); 
}) 

Демо здесь: http://jsfiddle.net/Debarupa/6jczxe7m/3/

Смотрите, как "Кнопка" может быть нажата, даже если оно кажется отключено.

ответ

1

Я считаю, что ui-disabled использует CSS-указатель-события: ни один из них не поддерживается в IE. В качестве обходного пути вы можете изменить свой обработчик кликов:

$('#btn').on("click", function(){ 
    if ($(this).hasClass('ui-disabled')) return false; 
    alert("Button was clicked"); 
}) 
+0

Спасибо, работает на меня! – WhatsInAName

Смежные вопросы