javascriptkendo-uisingle-page-applicationie-compatibility-modekendo-ui-mvc

NodeFilter is undefined error when using IE Compatibility mode with Kendo UI SPA application


I am building a Kendo UI application which is working perfectly fine in IE11. But when I add the site to be displayed in compatibility mode in IE11 i am getting an error "'NodeFilter' is undefined'. It raises this error while rendering the layout. see below code.

var appRouter = new kendo.Router({
  init: function () {
    layout.render("#application");
  }
});

Error is raised in kendo.web.min.js where it tries to remove white spaces (I guess by the name). This is the line of code that is failing.

var t=document.createNodeIterator(n,NodeFilter.SHOW_TEXT,function(t){...}

EDIT: I am not sure where the NodeFilter is defined. I cannot find it in kendo.web.js or kendo.core.js. Please help Just learned that NodeFilter is a property for window object. window.NodeFilter is null when compatibility mode is enabled in IE11. But Telerik demo SPA site works fine under these settings.


Solution

  • This question answered in Telerik Forums. Unfortunately Kendo UI do not support IE Compatibility mode.

    You can see the thread on Telerik forums here