jQuery hasClass()在IE 11中不起作用,但适用于Chrome和Firefox

时间:2016-01-21 06:35:12

标签: jquery internet-explorer internet-explorer-11

我有下面的代码在Chrome和Firefox中完美运行,但在IE 10和11中,它无效。

此外,当我在IE中打开开发人员工具时,它可以正常工作。

任何人都可以帮忙吗?

$("body" ).on( "click", ".js-save-request-meta", function(event) {
    event.preventDefault();
    var el = $(this);
    var meta_value = el.data('meta-value') || $('input[name="meta_value"]').val();
     if(el.hasClass('aspect-is-selected')){
        $.post( "../ajax/delete_Request_Meta.php", {meta_value:meta_value,request_id:RequestData.request_id} )
        .done(function( data ) {
            showMessage( data );                       
         });

    }else{

        $.post( "../ajax/save_Request_Meta.php", {meta_value:meta_value,request_id:<?=$request['request_id']?> } )

         .done(function( data ) {
            showMessage( data );              
                }      
           });     
});

2 个答案:

答案 0 :(得分:0)

尝试添加缺失功能

var isFunc = $.isFunction($.fn.lettering);

if (!isFunc){
  jQuery.fn.yourfunctionname = function() {
    return new RegExp(' ' + className + ' ').test(' ' + this[0].className + ' ');
  };
}

答案 1 :(得分:0)

此问题是由于缓存问题引起的。可以通过更改浏览器中的设置来清除缓存并从服务器刷新来纠正此问题。但是IE 11仍然存在刷新缓存的问题。

但是代码在IE 10中运行良好。谢谢!