iframe中使用jquery进行查找的方法【案例分析】

 更新时间:2016年06月17日 12:06:37   作者:hbiao68  
这篇文章主要介绍了iframe中使用jquery进行查找的方法,结合实际案例形式较为详细的分析了jQuery结合iframe查找的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了iframe中使用jquery进行查找的方法。分享给大家供大家参考,具体如下:

问题:

今天在公司是给ckeditor添加一个“是否显示”图片标题的功能

难点:

插件的内容很多,功能相当强大,在短时间之内无法通读和理解里面的逻辑关系,而且修改的内容不能破坏插件内部的逻辑关系,不能因为添加一个功能而引入更多的问题,因此只能从局部去解决这个问题

突破口:

知道页面时使用iframe框架插入的html,页面有些初始化的功能是在这里完成的,因此在这里添加这个checkbox组件,然后根据最后的window去寻找自己想要处理的window对象——window.parent.document.body

jQuery(expression, [context])——如果指定了 context 参数,如一个 DOM 元素集或 jQuery 对象,那就会在这个 context 中查找。

下面这个例子就是想在iframe的父窗口中添加组件

复制代码 代码如下:
$('tr.cke_dialog_ui_hbox', parent.document.body).prepend('<td><input type="checkbox" id="show_img_title" class="cke_dialog_ui_hbox_first">照片标题描述带入日记</td>');

不能在闭包里面去访问动态添加的组件,因为在页面加载的时候就已经运行了闭包里面的东西,但是页面还没有添加ID为kkkk的组件,使用$("#kkkk")得到的值就为空,这样不能实现预期的目的,出现异常的现象,在浏览器中会报脚本错误

如何判断jquery是否查找到符合条件的对象?

if(0==$(".check_show_img_title", parent.document.body).length){
   alert("没有查找到对象");
}else{
  alert("有"+$(".check_show_img_title", parent.document.body).length+"组件符合查询条件");
}

经验之谈:

在页面中动态添加了组件之后,由于刷新页面就恢复了正常初始化的状态,但是如果是局部刷新,可能会添加多个组件,但是如果只需要一个组件,则就是在离开页面的时候删除自己动态添加的组件,这样问题就来了,可能在不同的浏览器中不能删除,这样就会很郁闷,产生出浏览器兼容的问题,既然是这样那么可以换一种思维方式,在某种状态(在标签中添加属性)下就添加,否则就不添加,这样就不用去删除自己添加的组件了,换种方式解决了浏览器兼容的问题

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》、《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结

希望本文所述对大家jQuery程序设计有所帮助。

相关文章

  • Easyui ueditor 整合解决不能编辑的问题(推荐)

    Easyui ueditor 整合解决不能编辑的问题(推荐)

    这篇文章主要介绍了Easyui ueditor 整合解决不能编辑的问题 ,需要的朋友可以参考下
    2017-06-06
  • jQuery 注意事项 与原因分析

    jQuery 注意事项 与原因分析

    昨天用jQuery,做ajax提交,怎么都不成功,后来经过反复试验,总结了一个经验
    2009-04-04
  • jquery树形插件zTree高级使用详解

    jquery树形插件zTree高级使用详解

    这篇文章主要为大家详细介绍了jquery树形插件zTree高级使用教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • jQuery 插件开发指南

    jQuery 插件开发指南

    jQuery凭借其简洁的API,对DOM强大的操控性,易扩展性越来越受到web开发人员的喜爱,经常有人询问一些技巧,因此干脆写这么一篇文章给各位jQuery爱好者,算是抛砖引玉吧。
    2014-11-11
  • jQuery复制表单元素附源码分享效果演示

    jQuery复制表单元素附源码分享效果演示

    当我们遇到提交表单时,需要我们重复添加好几个表单,在订单表格中添加多个不同型号的产品信息。这个时候有复制表单表单按钮,也就是新增一项,通过点击复制按钮来实现新增一项,怎么实现的呢?下面小编跟大家分享,需要的朋友的朋友可以参考下
    2015-09-09
  • jQuery 跨域访问问题解决方法

    jQuery 跨域访问问题解决方法

    浏览器端跨域访问一直是个问题, 多数研发人员对待js的态度都是好了伤疤忘了疼,所以病发的时候,时不时地都要疼上一疼.记得很久以前使用iframe 加script domain 声明,yahoo js util 的方式解决二级域名跨域访问的问题.
    2009-12-12
  • 基于Jquery+Ajax+Json实现分页显示附效果图

    基于Jquery+Ajax+Json实现分页显示附效果图

    后台action产生json数据,js获取json数据分页显示,详细的示例代码如下,需要的朋友可以学习下
    2014-07-07
  • jQuery利用DOM遍历实现商城结算系统实战

    jQuery利用DOM遍历实现商城结算系统实战

    这篇文章主要介绍了jQuery利用DOM遍历实现商城结算系统实战,文章围绕主题展开详细的内容介绍,具一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • 简单实现jquery隔行变色

    简单实现jquery隔行变色

    这篇文章主要为大家详细介绍了实现jquery隔行变色效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • 解决jquery中动态新增的元素节点无法触发事件问题的两种方法

    解决jquery中动态新增的元素节点无法触发事件问题的两种方法

    这篇文章主要分享了解决jquery中动态新增的元素节点无法触发事件问题的两种方法,感兴趣的小伙伴们可以参考一下
    2015-10-10

最新评论