错误“undefined”为空或不是 Internet Explorer 中的对象
Error 'undefined' is null or not an object in Internet Explorer
在我的magento代码中,有1个文件。文件名 - 标头.phtml
我收到错误,例如"未定义"为空或不是对象。
如果我从IE本身调试该页面,那么它将从以下代码中破坏"var hashIndex = frameId.indexOf('#');"的代码。
function getFrameId()
{
var qs = parseQueryString(window.location.href);
var frameId = qs["frameId"];
var hashIndex = frameId.indexOf('#');
if (hashIndex > -1)
{
frameId = frameId.substring(0, hashIndex);
}
return frameId;
}
indexOf 在 IE 中不受支持。您将需要编写自己的 indexOf 函数。例如:
//Implement indexOf. (IE/mshta doesn't have it)
if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function (obj, fromIndex) {
if (fromIndex == null) {
fromIndex = 0;
} else if (fromIndex < 0) {
fromIndex = Math.max(0, this.length + fromIndex);
}
for (var i = fromIndex, j = this.length; i < j; i++) {
if (this[i] === obj)
return i;
}
return -1;
};
'undefined' 为 null 或不是对象意味着您在 上调用任何方法的 Java 脚本对象要么为 null,要么是不支持该特定方法的值。
在这种情况下var frameId = qs["frameId"];
我认为这返回了 null,您能否看到 QS 包含的内容以及是否有任何与 frameid 键关联的值
尝试
console.debug(qs);
在 Firefox 或 Chrome 中并检查该对象。您不仅可以确认对象中是否具有 frameId 属性,还可以检查该对象的所有内容,并可能在不同的对象键中找到要查找的信息。
相关文章:
- 视频HTML没有'无法在Internet Explorer 11上工作
- Internet Explorer缺少占位符支持,特别是密码字段
- Internet Explorer中的文本换行错误
- 为什么我在Internet Explorer上看不到html元素
- internet explorer 8兼容模式下的Youtube api错误
- 当浏览器控制台未打开时,为什么要求会导致Internet Explorer 9超时
- Internet Explorer 8. Events
- jQuery表单验证适用于Mozilla和Internet Explorer,但不适用于Chrome或Safari
- element.dataset in Internet Explorer
- Facebook FB.init”;访问被拒绝”;在Internet Explorer 11中
- JavaScript不适用于internet explorer和Firefox,但适用于谷歌
- 在Internet Explorer中,向所选内容添加选项不起作用
- 在Internet Explorer中从二进制文件打开PDF
- elementproblem internet explorer
- 我可以使用哪些方法在Internet Explorer中禁用Alt+*X*
- 如何在Internet Explorer中使用javascript设置cookie
- 只有当alert()在带有AJAX的internet explorer中使用时,Javascript才会更新UI
- sharepoint站点的internet explorer中出现Javascript错误
- Internet Explorer重新加载IFrame
- 如何在不使用Internet Explorer的情况下从未挂起的HTML文件执行程序