簡體   English   中英

在IE 11中,javascript輸入事件未觸發

[英]In IE 11 javascript input event is not getting fired

我正在嘗試使用范圍控制來捕獲分數0到10。 如果沒有與范圍控制進行任何交互,則需要禁用“下一步”按鈕。 這在chrome中工作正常,但是在IE 11中,更改范圍值時未調用以下代碼。 如何解決這個問題?

$( 'input[type="range"]' ).on( 'input', function () {

    var control = $( this ),
        controlMin = control.attr( 'min' ),
        controlMax = control.attr( 'max' ),
        controlVal = control.val(),
        controlThumbWidth = control.data( 'thumbwidth' );

    var range = controlMax - controlMin;

    var position = ( ( controlVal - controlMin ) / range ) * 100;
    var positionOffset = Math.round( controlThumbWidth * position / 100 ) - ( controlThumbWidth / 2 );
    var output = control.next( 'output' );

    output
        .css( 'left', 'calc(' + position + '% - ' + positionOffset + 'px)' )
        .text( controlVal );

    $( this ).attr( "data-modified", "1" );

    $( "#next" ).removeAttr( "disabled" );

} );

我認為當范圍輸入范圍更改時,IE11會觸發更改事件,而不是輸入事件。

這是一個有趣的比較

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM