什么是iframe:iframe元素即内联框架,iframe是内联的并且承前启后,对于外围的页面,iframe是一个普通的元素,对于iframe里面的内容,又是一个五脏俱全的页面。重下面的写法可以看出,iframe就是一个普通的元素,与span、div一样。注意,iframe既不是内联元素也不是块元素,因为它是可以设置width和height并且不会换行,所以它是inline-block元素。

一个简单的iframe元素的写法是:

<iframe id="newframe" name="newframe" src="xin.html"></iframe>

iframe元素的常用属性:

1、  frameborder:是否显示边框,yes、no

2、  height:框架作为一个普通元素的高度,最好使用css设置

3、  width:框架作为一个普通元素的宽度,最好使用csss设置

4、  name:框架的名称,window.frame[name]时专用的属性

5、  scrolling:框架是否滚动。yes、no、auto

6、  src:内框架的地址,可以是页面地址,也可以是图片的地址在这些属性中,frameborder、scrolling、src几乎所有的iframe都用到它们,典型的iframe元素一般是:

<iframe id="my" name="my" src=" blank.html " frameborder="0" scrolling="auto" ></iframe>

关于iframe自适应高度:所谓的高度自适应,一般就是要嵌入的iframe符合一定的要求(内嵌的iframe要适应父页面,当需要滚动条时滚动条显示,不需要时就不显示。当父页面窗口发生变化时,iframe也会变化。当iframe的内容变化时,其滚动条也要适应)。Iframe的自适应高宽只需要窗口大小和iframe元素大小,其中窗口大小是只读的,所以只需要关心iframe元素大小即可。只要注意以下事项就可以了:隐藏父页面滚动条。设置iframe元素的宽和高。Scrolling为auto。设置$(window).resiez()或者$(“#ID”).resiez(),使容纳iframe元素的节点在大小变化时没改变iframe的宽和高以适应。

iframe与无刷新:iframe实现无刷新的原理就是在A页面的表单提交数据到服务器,并且指定target属性为B页面,服务器返回内容到B页面,然后在B页面中调用JS程序,来刷新A页面,完成一次请求。如果在此过程中,B为A页面的一个iframe页面而且一直不显示,则对用户来说,就是一个无刷新,这种无刷新比ajax要麻烦,但在上传文件时,ajax是无法提交的,此时iframe似乎成了不二选择。但有一个要求就是AB两个页面要同域。

iframe与jquery:iframe与jquery的关系十分简单,jquery和$是页面上的一个JS对象,即window的一个普通对象,获得这个jquery对象后,就可以进行操作。如果要访问iframe页面的jquery对象,首先要保证能访问子页面的对象,当然iframe页面也要引人jquery.js。

在父页面访问子页面的jQuery对象。window.frames["xxxIframe"].$("#top"),表示访问子页面的top元素。如果拆分开来,会更容易理解即:

var iframe$ = window.frames["xxxIframe"].$;
iframe$("#top");

iframe元素的学习(笔记)的更多相关文章

  1. selenium元素定位学习笔记

    一,定位原则 稳定 简单灵活 唯一 WebDriver提供了两种方式来定位页面元素,分别是find_element_by_XXX和find_elements_by_XXX.第一种方式的结果是在正常情况 ...

  2. CSS学习笔记——盒模型,块级元素和行内元素的区别和特性

    今天本来打算根据自己的计划进行前端自动化的学习的,无奈早上接到一个任务需求需要新增一个页面.自从因为工作需要转前端之后,自己的主要注意力几 乎都放在JavaScript上面了,对CSS和HTML这方面 ...

  3. java web jsp学习笔记--概述-常用语法,指令,动作元素,隐式对象,域对象

     JSP学习笔记 1.什么是jsp JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP/Servlet规范.JS ...

  4. qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)

    原博主博客地址:http://blog.csdn.net/qq21497936本文章博客地址:http://blog.csdn.net/qq21497936/article/details/78516 ...

  5. Vue.js学习笔记:在元素 和 template 中使用 v-if 指令

    f 指令 语法比较简单,直接上代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " ...

  6. React学习笔记 - 元素渲染

    React Learn Note 3 React学习笔记(三) 标签(空格分隔): React JavaScript 二.元素渲染 元素是构成react应用的最小单位. 元素是普通的对象. 元素是构成 ...

  7. Python3+Selenium3+webdriver学习笔记10(元素属性、页面源码)

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记10(元素属性.页面源码)'''from selenium i ...

  8. Html5学习笔记1 元素 标签 属性

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. amazeui学习笔记--css(HTML元素5)--表格Table

    amazeui学习笔记--css(HTML元素5)--表格Table 一.总结 1.基本样式:am-table:直接模块名  <table class="am-table"& ...

随机推荐

  1. Mysql Group Replication 简介及单主模式组复制配置【转】

    一 Mysql Group Replication简介    Mysql Group Replication(MGR)是一个全新的高可用和高扩张的MySQL集群服务.    高一致性,基于原生复制及p ...

  2. Js apply方法详解,及其apply()方法的妙用

    Js apply方法详解 我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这 ...

  3. angular入门学习文档之一

    一.数据双向绑定 angular(下面统一简称ng)强大的地方莫过于它内置的数据双向绑定功能,下面我们通过一个简单的例子来演示ng强大的双向绑定数据的能力. 代码如下: 1.dom结构: 1.< ...

  4. php单例模式 (转

    假设我们需要写一个类用来操作数据库,并同时满足以下要求: ①SqlHelper类只能有一个实例(不能多)②SqlHelper类必须能够自行创建这个实例③必须自行向整个系统提供这个实例,换句话说:多个对 ...

  5. Vue 爬坑之路(一)—— 使用 vue-cli 搭建项目 (增补)

    cd  指定好安装目录 vue init webpack  项目名称 执行  vue vue list  查看可应用模板 vue init webpack  +名字 项目已启动

  6. Spring Boot快速搭建Spring框架

    Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development a ...

  7. forEach遍历数组对象且去重

    forEach遍历数组对象 var obj1 = [{ key: '01', value: '哈哈' }, { key: '02', value: '旺旺' }, { key: '03', value ...

  8. 03.基于IDEA+Spring+Maven搭建测试项目--常用dependency

    <!--常用的依赖配置--> <!--未展示完整的pom.xml文件内容--> <properties> <java.version>1.8</j ...

  9. 简明Python教程自学笔记——命令行通讯录

    [前言]学习Python已经有一段时间了,相关的书籍资料也下载了不少,但是没有一本完整的看完,也没有编出一个完整的程序.今天下午比较清闲就把<简明Python教程>看了一遍,然后根据书里面 ...

  10. hbase 多个过滤器组合(列表)

    使用FilterList要保证过滤器的顺序需要使用List<Filter> private static void mutilFilterData() throws IOException ...