检查iframe被嵌套的三种方式

采用window对象方式

if (window.top != window.self) {
	alert("window对象-被嵌套一层或多层");	
}
if (window.top != window.parent) {
	alert("window对象-被嵌套两层");
}

采用self对象方式

if (self.top != self.self) {
	alert("self对象-被嵌套一层或多层");
}
if (self.top != self.parent) {
	alert("self对象-被嵌套两层");
}

采用逻辑表达式之短路计算方式

(t = window.top) && t == window.self || alert("短路计算-被嵌套一层或多层");
(t = window.top) && t == window.parent || alert("短路计算-被嵌套两层");

逻辑表达式说明

发表评论