
巧妙模拟父页面点击子iframe中的链接,实现页面跳转
直接在父页面模拟子iframe内标签的点击跳转并非易事,因为iframe内容通常与父页面隔离。 单纯的click事件无法奏效。我们需要一种方法访问并操作iframe内部的元素。
解决方案:利用jQuery跨域操作iframe元素
本方案使用jQuery选择器,直接在父页面操作iframe内的DOM元素,从而触发跳转。
$(this).children("iframe").contents().find(".course_index").children("a")[0].click();
代码解析:
-
$(this).children("iframe"): 选择当前元素(this)下的iframe子元素。 -
.contents(): 获取iframe内部的document对象。这是关键步骤,它允许我们访问iframe的内容。 -
.find(".course_index").children("a"): 在iframe的document中查找class为"course_index"的元素下的标签。 -
[0]: 获取找到的第一个元素,将其转换为原生DOM对象。 jQuery对象无法直接调用click()方法。 -
.click(): 触发标签的原生click事件,从而实现页面跳转。
此方法直接操作iframe内部的DOM元素,模拟了用户点击行为,比在iframe内触发click事件更可靠,确保跳转的顺利进行。










