from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://ui.imdsx.cn/uitester/')
import time
time.sleep(1)
driver.execute_script('window.scrollTo(0,0);')
time.sleep(1)
#截图
# driver.get_screenshot_as_file('pngdemo.png')
#
# el = driver.find_element_by_css_selector('[href="/new-index/"]')
# el.click()
#print(driver.window_handles)
#獲取全部tag的标签名
# handles = driver.window_handles
#切换到新的tab页面,过时的写法
#driver.switch_to_window(handles[1])
time.sleep(1)
# driver.switch_to.window(handles[1])
#
#
# driver.find_element_by_css_selector('#newtag').send_keys('xxxx')
#关闭页面关闭当前的页面 ruguo关闭页面,必须 手动切换页面,不会自动切换
# driver.close()
# driver.switch_to.window(handles[0])
# driver.find_element_by_css_selector('#i1').send_keys('xxxx')
#退出驱动,点x的操作
#driver.quit()
#切换ifram
#什么是ifram\\
#如果有name属性或者idshuxing 可以直接在frame中填写
#如果没有name和id属性 可以接受elementobj
eleobj = driver.find_element_by_css_selector('[src="/new-index/"]')
#driver.switch_to.frame('top-frame')
driver.switch_to.frame(eleobj)
driver.find_element_by_css_selector('#newtag').send_keys('xxxx')
driver.switch_to.frame('baidu-frame')
driver.find_element_by_css_selector('#kw').send_keys('xxxx')
#返回上一层,qingkong
driver.switch_to.parent_frame()
driver.find_element_by_css_selector('#newtag').clear()
driver.switch_to.frame('baidu-frame')
driver.find_element_by_css_selector('#kw').clear()
-
2021-06-11 14:50:33
一、iframe的优点:
1、 iframe能够原封不动地把嵌入的网页展现出来。
2、 如果有多个网页调用iframe,只需要修改iframe的内容,就可以实现对调用iframe的每一个页面内容的更改,方便快捷。
3、 网页如果为了统一风格,头部和版本都是一样的,就可以写成一个页面,用iframe来嵌套,可以增加代码的可重用性。
4、 如果遇到加载缓慢的第三方内容如图标和广告等,可以用iframe来解决。
二、iframe的缺点:
1、 会产生很多页面,不容易管理。
2、 在几个框架中都出现上下、左右滚动条时,这些滚动条除了会挤占已经非常有限的页面空间外,还会分散访问者的注意力。
3、 使用框架结构时,必须保证正确设置所有的导航链接,否则会给访问者带来很大的麻烦。比如被链接的页面出现在导航框架内,这种情况下会导致链接死循环。
4、 很多的移动设备(PDA手机)无法完全显示框架,设备兼容性差。
5、 iframe框架页面会增加服务器的http请求,对于大型网站是不可取的。
现在基本上都是用Ajax来代替iframe,iframe已渐渐退出了前端开发。
更多相关内容 -
js实现ifram取父窗口URL地址的方法
2020-12-11 12:47:16本文实例讲述了js实现ifram取父窗口URL地址的方法。分享给大家供大家参考。具体实现方法如下: var url=''; try { url = window.top.document.referrer ; } catch(M) { if (window.parent) { try { url = ... -
ifram
2019-09-22 17:56:09#什么是ifram\\ #如果有name属性或者idshuxing 可以直接在frame中填写 #如果没有name和id属性 可以接受elementobj eleobj = driver.find_element_by_css_selector('[src="/new-index/"]') #driver.switch_to.frame('...转载于:https://www.cnblogs.com/yqcf/p/9478907.html
-
解决layer.msg 不居中 ifram中的问题
2021-01-19 17:34:31在ifram中layer.alert 只展示当前页面 如何让弹框在整个页面中展示 而不是在ifram中 parent.parent.layer.alert('请输入预约人'); 本以为这样就可以 在主页面中还需要引入layer <!--如果使用的是layui... -
JavaScript使ifram跨域相互访问及与PHP通信的实例
2020-10-22 18:04:07主要介绍了JavaScript使ifram跨域相互访问及与PHP通信的实例,同时对同域间的访问也作了详细的演示,需要的朋友可以参考下 -
jQuery居中弹出ifram,于是自己做了个插件
2016-12-03 11:35:08使用方法 首先引用: <script src="jquery-1.8.3.min.js" type="text/javascript"> <script src="showcenterdiv.js" type="text/javascript"> 指定在要弹出的链接: $(document).ready(function () { ... -
Ifram框架如何在登录过期后跳出Ifram框架
2020-08-11 15:11:52我们在做后台项目管理时,常用 Ifram 框架来加载页面,即: <iframe src="url"></iframe> 我们使用 iframe 标签来加载页面,该 src 可以指向不同的页面,从而我们可以在一个网页中打开更多的页面,但是...1、文章背景
我们在做后台项目管理时,常用 Ifram 框架来加载页面,即:
<iframe src="url"></iframe>
我们使用 iframe 标签来加载页面,该 src 可以指向不同的页面,从而我们可以在一个网页中打开更多的页面,但是我们也需要尽可能地控制同事打开的网页数,避免客户端消耗太大导致网页崩溃。网页效果如下:
2、问题描述
那上一步,我们已经了解了 Ifram 框架,整体大概分为:菜单栏,导航栏,和主体 Ifram 内容,那么当我们登录信息过期的时候,系统会进行登录拦截,导致页面跳到登录界面,如下:
可以看出,当我们登录信息过期之后,ifram 加载了登录界面,当我们输入了登录信息之后,发现如下:
那么客户是不清楚发生了什么事的,一定会觉得这个系统是不是出问题了,这对用户体验是极差的3、解决方案
以上,我们了解了 ifram 加载的页面,会导致登录信息过期时,加载了登录界面,影响用户体验,那么解决方法如下:
// 登录过期的时候,跳出ifram框架 if (top.location != self.location) { top.location = self.location };
我们在登录界面的 JS 中,加上如上代码,表示当前窗体的 URL 与 父窗体的 URL 是否不相等,不相等则父窗体的 URL 等于当前窗体的 URL,这样就能成功跳出 Ifram 框架了
如您在阅读中发现不足,欢迎留言!!!
-
ifram自适应高度方法
2013-03-15 06:06:23web中使用IFRAM实现自适应高度,文档简洁,适合快速学习。 -
详解如何在登录过期后跳出Ifram框架
2020-11-19 12:16:101、文章背景 -
ifram 表单post 方法免密登录的实现
2021-04-27 11:17:39iframe默认使用的是get请求,所以外面要使用form表单的post请求实现免密码跳转系统。 html写法: <!DOCTYPE html> <html> <head> <meta charset="utf-8">... wid.iframe默认使用的是get请求,所以外面要使用form表单的post请求实现免密码跳转系统。
html写法:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>使用iframe的post请求提交网页</title> </head> <style> #iframe{ height: 800px; width: 100%; } .layadmin-iframe{ height: 800px; width: 100%; } </style> <body> <div> <!-- <form id="ttsForm" target="iframe" method="post" action="https://iba.jinmaowy.com/login?username=&password=" > </form> --> <!-- <form id="ttsForm" target="iframe" method="post" action="https://iba.jinmaowy.com//login?username=&password=c2=" > </form> --> <!-- <iframe name="iframe" frameborder="0" class="l
-
jquery fancybox弹出层插件支持Ajax,ifram
2019-11-10 18:32:02jquery fancybox弹出层插件支持Ajax,ifram jquery fancybox弹出层插件支持Ajax,ifram jquery fancybox弹出层插件支持Ajax,ifram jquery fancybox弹出层插件支持Ajax,ifram -
ifram自适应高度兼容性非常强
2012-02-25 16:53:55ifram自适应高度兼容性非常强,本人经过这个浏览器的测试都OK -
vue页面和ifram之间传值信息交互
2020-09-03 16:59:09方式一: vue页面 mounted(){ window['reData'] = () => { //监听iframe页面调用本vue页面的方法并执行 this.reData(); ... const obj1 = window.frames['mainIframe']// 获得对应iframe的window对象 ... -
解决bootstrap标签页切换中ifram引入的外部链接显示出现问题(layui也差不多)最新更新
2019-04-17 17:31:09//重新设置加载对应标签中ifram的src,解决标签切换ifram嵌套页面的显示问题 if(target === "#information"){ $(document).ready(function () { $("#appraise .iframeurl").attr('src','sales_person_information... -
使用ifram循环加载网页
2019-08-31 18:13:31<!DOCTYPE html> <html> <head lang="en"> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge">...meta name="viewport" content="width=... -
ifram jQuery-online xuanzuowei(动态加载) seat
2017-08-03 12:40:14ifram jQuery-online xuanzuowei(动态加载) seat -
ifram相关
2019-10-03 21:01:561.一自定义页面通过ifram签入到客户页面中,取客户页面中的字段new_name parent.window.document.getElementById("new_name").value parent.Xrm.Page.getAttribute("字段ID"); 2.crm中的iframe传递参数到aspx页... -
ifram子页面调用父页面函数的若干方法
2018-02-01 17:01:03因为ifram子页面与父页面并非在一个页面内,即所在域是不同的,无法做到直接互相调用方法,下面以ifram子页面调用父页面方法做了若干解决方案; 一、通过parent来调用父页面的方法 在子页面与父页面同域的情况下,... -
与iframe通信 触发ifram中的事件
2020-04-09 09:08:48父页面: setIframe(state,id){ // console.log(state,id) var frame = document.getElementById(id); frame.contentWindow.postMessage(state,'*'); }, iframe监听消息 ... -
js 获取ifram子页面中所有的自定义标签
2018-04-03 10:34:45var init = function(iframId,r_v_data){ ... get_Ifram(iframId); } var get_Ifram = function(iframId){ var iframe = document.getElementById(iframId); get_R_V(iframe.contentWindow.documen... -
ifram子页面与父页面之间的传值
2020-12-01 17:41:51相信很多小伙伴在项目中都会遇到需要嵌入外链页面的情况,这时候很可能会遇到一个问题,就是如何在iframe子页面自己的项目页面之间传值,特别是跨域的情况 1. 同域的情况 1.1 相互获取dom元素 1.1.1 在父页面获取子... -
layer 弹出框(ifram 层),在ajax return 处 ,无法友好的用layer.msg
2021-08-06 06:01:27父层添加点击添加,按钮,执行添加方法function addCategory() {layer.open({ title:'添加分类',type: 2,area: ['700px', '530px'],fix: false, //不固定maxmin: true,content: '{sh::U("Mall/editcategory")}',... -
svg如何在ifram显示
2018-11-05 23:22:15svg如何在ifram显示 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>svg_test&... -
ifram嵌入网址 有跨域问题
2018-08-30 10:31:00可以在头部加上<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />或者://相对协议url 转载于:https://www.cnblogs.com/guidan/p/9558627.html -
动态属性的ifram定位
2018-01-26 17:55:37如图所示的页面,这个iframe的属性id是动态变化的,之前是"layui-layer-iframe8",现在变成了"layui-layer-iframe10",属性name也是动态变化,我们用常规的xpath定位定的不是唯一iframe。 观察页面,考虑到页面很多...