- 浏览: 473960 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
yuan_bin1990:
您好,请问下demo如何运行啊,准备研究研究,但不知道入口啊。 ...
ssh2(struts2+spring2.5+hibernate3.3)自动生成代码程序 -
luyulong:
[b][/b][i][/i][ ...
jQuery进度条插件 jQuery progressBar -
txin0814:
mark..
读取文件目录 -
vurses:
[align=center][color=red][size= ...
include 与 jsp:include区别 -
Roshan2:
http://lijiejava.iteye.com/blog ...
Spring AOP 入门实例
<iframe>是框架的一种形式,也比较常用到。
一:几个例子——演示iframe的基本用法
例1: <iframe width=420 height=330 frameborder=0 scrolling=auto src="URL" mce_src="URL"></iframe> 不用多说了,iframe的各个属性含义如下: width插入页的宽;height插入页的高;scrolling 是否显示页面滚动条(可选的参数为 auto、yes、no,如果省略这个参数,则默认为auto);frameborder 边框大小; 注意:URL建议用绝对路径;传说中百DU用:<iframe width=0 height=0 frameborder=0 scrolling=auto src="WWW" mce_src="WWW" .webjx.com></iframe><br />黑了88*8。。。 例2: 如果一个页面里面有框架。。随便点页面里的连接,要求在这个<iframe> 里打开。在iframe 中加入name=** (**自己设定). <iframe name=** ></iframe> 然后在修改默认打开模式,:网页HEAD中加上<a href="URL" mce_href="URL" target=**>或部分连接的目标框架设为(**). 例3: 要插入一个页面。要求只拿中间一部分。其他的都不要,代码如下: <iframe name=123 align=middle marginwidth=0 marginheight=0 vspace=-170 hspace=0 src="<a href=" mce_src="<a href="http://www.webjx.com/" mce_href="http://www.webjx.com/"><span style="color: #0000ff;" mce_style="color: #0000ff;"><span style="text-decoration: underline;" mce_style="text-decoration: underline;">http://www.webjx.com/</span></span></a>" frameborder=no scrolling=no width=776 height=2500></iframe> 控制插入页被框架覆盖的深度 marginwidth=0 marginheight=0;控制框架覆盖上部分的深度 vspace=-170 scrolling滚动条要否(auto、yes、no) frameborder框架的边框大小,width=776 height=2500此框架的大小。 例4: 1、页面内加入iframe <iframe width=420 height=330 frameborder=0 scrolling=auto src="URL" mce_src="URL"></iframe>, scrolling表示是否显示页面滚动条,可选的参数为auto、yes、no,如果省略这个参数,则默认为auto。 2、超链接指向这个嵌入的网页,只要给这个iframe命名就可以了。方法是<iframe name=**>,例如我命名为aa,写入这句HTML语言<iframe width=420 height=330 name=aa frameborder=0 src="http://www.cctv.com" mce_src="http://www.cctv.com"></iframe>,然后,网页上的超链接语句应该写为:<a href="URL" mce_href="URL" target=aa> 3、如果把frameborder设为1,效果就像文本框一样 透明的IFRAME的用法 必需IE5.5以上版本才支持 在transparentBody.htm文件的<body>标签中,我已经加入了style="background- color=transparent" 通过以下四种IFRAME的写法我想大概你对iframe背景透明效果的实现方法应该会有个清晰的了解: <IFRAME ID="Frame1" SRC="transparentBody.htm" mce_SRC="transparentBody.htm" allowTransparency="true"></IFRAME> <IFRAME ID="Frame2" SRC="transparentBody.htm" mce_SRC="transparentBody.htm" allowTransparency="true" STYLE="background-color: green" mce_STYLE="background-color: green"> </IFRAME> <IFRAME ID="Frame3" SRC="transparentBody.htm" mce_SRC="transparentBody.htm"></IFRAME> <IFRAME ID="Frame4" SRC="transparentBody.htm" mce_SRC="transparentBody.htm" STYLE="background-color: green" mce_STYLE="background-color: green"> </IFRAME>
二:(难点)设置iframe框架的背景色
a.htm <mce:script type="text/javascript"><!-- function setBG(){ var strColor=document.bgColor; frm.document.bgColor=strColor; } // --></mce:script> <body style="background-color:red" mce_style="background-color:red" onload='setBG()'> <iframe src="about:blank" mce_src="about:blank" name=frm></iframe>
三:(难点)窗口与浮动帧之间的相互控制
在脚本语言与对象层次中,包含Iframe的窗口我们称之为父窗体,而浮动帧则称为子窗体,弄清这两者的关系很重要,因为要在父窗体中访问子窗体或相反都必须清楚对象层次,才能通过程序来访问并控制窗体。 1、在父窗体中访问并控制子窗体中的对象 在父窗体中,Iframe即子窗体是document对象的一个子对象,可以直接在脚本中访问子窗体中的对象。 现在就有一个问题,即,我们怎样来控制这个Iframe,这里需要讲一下Iframe对象。当我们给这个标记设置了ID 属性后,就可通过文档对象模型DOM对Iframe所含的HTML进行一系列控制。 比如在example.htm里嵌入test.htm文件,并控制test.htm里一些标记对象: <Iframe src="test.htm" mce_src="test.htm" id="test" width="250" height="200" scrolling="no" frameborder="0"></iframe> test.htm文件代码为: <html> <body> <h1 id="myH1">hello,my boy</h1> </body> </html> 如我们要改变ID号为myH1的H1标记里的文字为hello,my dear,则可用: document.myH1.innerText="hello,my dear"(其中,document可省) 在example.htm文件中,Iframe标记对象所指的子窗体与一般的DHTML对象模型一致,对对象访问控制方式一样,就不再赘述。 2、在子窗体中访问并控制父窗体中对象 在子窗体中我们可以通过其parent即父(双亲)对象来访问父窗口中的对象。 如example.htm: <html> <body onclick="alert(tt.myH1.innerHTML)"> <Iframe name="tt" src="frame1.htm" mce_src="frame1.htm" width="250" height="200" scrolling="no" frameborder="0"></iframe> <h1 id="myH2">hello,my wife</h1> </body> </html> 如果要在frame1.htm中访问ID号为myH2中的标题文字并将之改为"hello,my friend",我们就可以这样写: parent.myH2.innerText="hello,my friend" 或者parent.document.getElementById("myH2").innerText="hello,my friend" 这里parent对象就代表当前窗体(example.htm所在窗体),要在子窗体中访问父窗体中的对象,无一例外都通过parent对象来进行。 3:frame的一个子元素访问frame的另一个子元素 例如:框架文件frame.html中嵌入了另外两个html文件 <div styleClass="basewnd"> <!-- 搜索 --> <div id="search" name="test" align="center" class="top_list_home"> <iframe id="frameSearch" name="search" src="Search.html" mce_src="Search.html" frameBorder="0" scrolling="no" width="195px" height="150px" marginheight="0" marginwidth="0"></iframe> </div> <!-- 单位目录树 --> <div align="center" class="welcome_tag_home"> <iframe src="DirectoryTree.html" mce_src="DirectoryTree.html" frameBorder="0" scrolling="no" width="195px" height="427px" marginheight="0" marginwidth="0"></iframe> </div> </div> 那么现在要在DirectoryTree.html文件中访问Search.html文件中的一个id为section的<font></font>标签的innerHTML属性,则可以这样: alert(parent.document.search.section.innerHTML),其中search是“搜索”div的id,或者: alert(parent.document.getElementById("search").section.innerHTML), 或者也可以这样: alert(parent.document.frames["frameSublist"].name)(这是直接访问iframe) 但是以上这些方法都不怎么好用,因为iframe不是标准HTML标签,因此这些方法总是时不时地失灵,因此最好使用下面的方法: obj = parent.document.getElementById("frameSearch").contentWindow obj=obj.document.getElementById("section") obj.innerHTML="大家好!" 这种方法屡试不爽,关于具体的介绍,见下面的第四节(用JS访问操作iframe里的dom完全攻略!) Iframe虽然内嵌在另一个HTML文件中,但它保持相对的独立,是一个“独立王国“哟,在单一HTML中的特性同样适用于浮动帧中。试想一下,通过Iframe标记,我们可将那些不变的内容以Iframe来表示,这样,不必重复写相同的内容,这有点象程序设计中的过程或函数,减省了多少繁琐的手工劳动!另外,至关重要的是,它使页面的修改更为可行,因为,不必因为版式的调整而修改每个页面,你只需修改一个父窗体的版式即可了。 4:最适用的iframe内部和外部元素的访问方法(在各个浏览器中都适用,并且不会失灵,而上面介绍的那些方法中,很多用过一两次后就失灵了) 请见下一个文本框。
四:(重重之点)用JS访问操作iframe里的dom完全攻略!
两个页面,一个页面是iframe所在页面(页面名称:iPage.html),另一个页面是iframe属性src指向页面(页面名称:srcPage.html)。 iPage.html,<body>里dom: <iframe id=“iId“ name=“iName“ src="“srcPage.html“" mce_src="“srcPage.html“" scrolling=“no“ frameborder=“0“></iframe> srcPage.html,<body>里dom: <h1>妹妹的一天</h1> <p>早上吃早点,中午约会吃饭,下午K歌,晚上和哥哥瞎折腾</p> 下面讨论ie下JS是怎么操作以上两个页面,再讨论firefox的做法,最后给出兼容ie,firefox浏览器操作iframe对象的方法。 一、ie下访问操作iframe里内容 大家都知道iframe是非标准html标签,它是由ie浏览器推出的多布局标签, 随后Mozilla也支持了这个标签。(闲话,嘿嘿) 1. ie通过document.frames["IframeName"]获取它,例子:我们在iPage.html里输出srcPage.html里h1的内容,JS如下,firefox下document.frames 没有定义错误提示: window.onload = (function () { alert(document.frames["iName"].document.getElementsByTagName(‘h1‘)[0].firstChild.data);}); 2. ie另一种方法contentWindow获取它,代码: window.onload = (function () { var iObj = document.getElementById(‘iId‘).contentWindow; alert(iObj.document.getElementsByTagName(‘h1‘)[0].firstChild.data); }); 此方法经过ie6,ie7,firefox2.0,firefox3.0测试都通过,好事啊!嘿嘿。(网上一查,发现Mozilla Firefox iframe.contentWindow.focus缓冲区溢出漏洞,有脚本注入攻击的危险。 后来听说可以在后台防止这样的事情发生,算是松了口气。不过还是希望firefox新版本可以解决这样的危险。) 3.改变srcPage.html里h1标题内容,代码: iObj.document.getElementsByTagName(‘h1‘)[0].innerHTML=‘我想变成她一天的一部分‘; 通过contentWindow后访问里面的节点就和以前一样了。 二、firefox下访问操作iframe里内容 Mozilla支持通过IFrameElmRef.contentDocument访问iframe的document对象的W3C标准,通过标准可以少写一个document,代码: var iObj = document.getElementById(‘iId‘).contentDocument; alert(iObj.getElementsByTagName(‘h1‘)[0].innerHTML=‘我想变成她一天的一部分‘); alert(iObj.getElementsByTagName(‘p‘)[0].firstChild.data); 兼容这两种浏览器的方法,现在也出来了,就是使用contentWindow这个方法。 嘿嘿!操作iframe是不是可以随心所欲了呢?如果还觉得不爽,你甚至可以重写iframe里的内容。 三、重写iframe里的内容 通过designMode(设置文档为可编辑设计模式)和contentEditable(设置内容为可编辑),你可以重写iframe里的内容。代码: var iObj = document.getElementById(‘iId‘).contentWindow; iObj.document.designMode = ‘On‘; iObj.document.contentEditable = true; iObj.document.open(); iObj.document.writeln(‘<html><head>‘); iObj.document.writeln(‘<mce:style><!-- body {background:#000;font-size:9pt;margin: 2px; padding: 0px;} --></mce:style><style mce_bogus="1">body {background:#000;font-size:9pt;margin: 2px; padding: 0px;}</style>‘); iObj.document.writeln(‘</head><body></body></html>‘); iObj.document.close(); 这两个对象的资料可参考:http://msdn.microsoft.com/en-us/library/ms533720(VS.85).aspx 四、iframe自适应高度 有了上面的原理要实现这个相当简单,就是把iframe的height值设置成它里面文档的height值就可以。代码: window.onload = (function () { var iObj = document.getElementById(‘iId‘); iObj.height = iObj.contentWindow.document.documentElement.scrollHeight;}); 现在对JS操作iframe你已经有了全新的认识,说不定那天会因为这个有什么新的web技术名词,嘿嘿,臭美下! PS: 1. Document.designMode ,Document.contentEditable在你这里的使用场景错了,他一般是应用在在线编辑器上的,如果你并不是开放给用户操作的话,根本没必要设置这个属性! 2. 另外之所以要用 window.onload,是因为页面加载中,iframe的加载顺序是在最后的,也就是说,在没用window.onload的情况下,在执行你那段js的时候iframe里的dom都还没加载到,这样自然是无输出的了 3. 如果是在两个不同的子域下,上面的代码需要做小的改动。 调用iframe的页面和被iframe的页面需要增加设置 document.domain 的代码,指明同一个根域即可。 参考资料: https://developer.mozilla.org/cn/Migrate_apps_from_Internet_Explorer_to_Mozilla http://msdn.microsoft.com/en-us/library/ms533690(VS.85).aspx http://www.kuqin.com/webpagedesign/20080516/8536.html http://www.nohack.cn/jsj/safe/2006-10-05/8156.html 此外,用DOM方法与jquery方法结合的方式: 1.在父窗口中操作 选中IFRAME中的所有单选钮 $(window.frames["iframe1"].document).find("input[@type='radio']").attr("checked","true"); 2.在IFRAME中操作 选中父窗口中的所有单选钮 $(window.parent.document).find("input[@type='radio']").attr("checked","true"); iframe框架的:<iframe src="test.html" mce_src="test.html" id="iframe1" width="700" height="300" frameborder="0" scrolling="auto"></iframe> 3.Try this: $("#myid", top.document); the top.document tells the selector to target the myid element which exists in the topmost document (your parent page). In order for this to work, jquery must be loaded in the file which is viewed through the iframe. 我的代码 $('#parentElem', top.document).append('<div class="imgbox" id="imgbox"><img class="img" src="pp.png" mce_src="pp.png" id="img"></div>'); --end--
五:用图片代替iframe的滚动条
<IFRAME frameBorder=0 frameSpacing=0 height=25 marginHeight=0 marginWidth=0 scrolling=no name=main src="/bgm/bgm.html" mce_src="bgm/bgm.html" width=300></IFRAME> 用了iframe后 发现滚动条不漂亮 想用2个图片来代替↑↓应该怎么实现呢? 回答:用下列代码替换网页的<title>..</title> <SCRIPT LANGUAGE="javascript"> function scroll(n) {temp=n; Out1.scrollTop=Out1.scrollTop+temp; if (temp==0) return; setTimeout("scroll(temp)",80); } </SCRIPT> <TABLE WIDTH="330"> <TR> <TD WIDTH="304" VALIGN="TOP" ROWSPAN="2" > <DIV ID=Out1 STYLE="width:100%; height:100;overflow: hidden ;border-style:dashed;border-width: 1px,1px,1px,1px;" mce_STYLE="width:100%; height:100;overflow: hidden ;border-style:dashed;border-width: 1px,1px,1px,1px;"> 文字<BR> 文字<BR> 文字<BR> 文字<BR> 文字 <BR> <BR> </DIV> </TD> <TD WIDTH="14" VALIGN="TOP"><IMG SRC="photo/up0605.gif" mce_SRC="photo/up0605.gif" WIDTH="14" HEIGHT="20" onmouseover="scroll(-1)" onmouseout="scroll(0)" onmousedown="scroll(-3)" BORDER="0" ALT="按下鼠标速度会更快!"></TD> </TR> <TR> <TD WIDTH="14" VALIGN="BOTTOM"><IMG SRC="photo/down0605.gif" mce_SRC="photo/down0605.gif" onmouseover="scroll(1)" onmouseout="scroll(0)" onmousedown="scroll(3)" BORDER="0" WIDTH="15" HEIGHT="21" ALT="按下鼠标速度会更快!"></TD> </TR> </TABLE> ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 下面这段代码可以实现IFrame自适应高度,即随着页面的长度,自动适应以免除页面和IFrame同时出现滚动条。 源代码如下: <mce:script type="text/javascript"><!-- //** iframe自动适应页面 **// //输入你希望根据页面高度自动调整高度的iframe的名称的列表 //用逗号把每个iframe的ID分隔. 例如: ["myframe1", "myframe2"],可以只有一个窗体,则不用逗号。 //定义iframe的ID var iframeids=["test"] //如果用户的浏览器不支持iframe是否将iframe隐藏 yes 表示隐藏,no表示不隐藏 var iframehide="yes" function dyniframesize() { var dyniframe=new Array() for (i=0; i<iframeids.length; i++) { if (document.getElementById) { //自动调整iframe高度 dyniframe[dyniframe.length] = document.getElementById(iframeids); if (dyniframe && !window.opera) { dyniframe.style.display="block" if (dyniframe.contentDocument && dyniframe.contentDocument.body.offsetHeight) //如果用户的浏览器是NetScape dyniframe.height = dyniframe.contentDocument.body.offsetHeight; else if (dyniframe.Document && dyniframe.Document.body.scrollHeight) //如果用户的浏览器是IE dyniframe.height = dyniframe.Document.body.scrollHeight; } } //根据设定的参数来处理不支持iframe的浏览器的显示问题 if ((document.all || document.getElementById) && iframehide=="no") { var tempobj=document.all? document.all[iframeids] : document.getElementById(iframeids) tempobj.style.display="block" } } } if (window.addEventListener) window.addEventListener("load", dyniframesize, false) else if (window.attachEvent) window.attachEvent("onload", dyniframesize) else window.onload=dyniframesize // --></mce:script>
六:iframe属性
属性 值 描述 DTD
align left
right
top
middle
bottom
规定如何根据周围的文本来排列此框架。 TF
frameborder 1
0
规定是否显示框架的边框。 TF
height pixels
%
定义 iframe 的高度。 TF
longdesc URL 描述此框架内容的长描述的URL。 TF
marginheight pixels 定义 iframe 的顶部和底部的边距。 TF
marginwidth pixels 定义 iframe 的左侧和右侧的边距。 TF
name frame_name 规定 iframe 的唯一名称 (以便在脚本中使用)。 TF
scrolling yes
no
auto
定义滚动条。 TF
src URL 在 iframe 中显示文档的 URL。 TF
width pixels
%
定义 iframe 的宽度。 TF
七:本人项目部分代码参考
以下是本人自己在实际项目开发时利用frame写的一段源代码,仅供参考: 主文件(框架): <html> <head> <title>教育局资源管理系统</title> <mce:script src="resources/js/DirectoryTree/DirectoryTree.js" mce_src="resources/js/DirectoryTree/DirectoryTree.js"></mce:script> <mce:script src="resources/js/date.js" mce_src="resources/js/date.js"></mce:script> <link rel="stylesheet" type="text/css" href="resources/css/frame.css" mce_href="resources/css/frame.css"> <link rel="stylesheet" type="text/css" href="resources/css/global.css" mce_href="resources/css/global.css"> <mce:script language="javascript"><!-- function setBgColor() { var bg=document.bgColor bottom.document.bgColor=bg } // --></mce:script> </head> <body bgcolor="#f9edff" onload="setBgColor()"> <div styleClass="basewnd"> <!-- LOGO --> <div align="center" class="flag"> <iframe src="resources/HTMLFolders/Logo.html" mce_src="resources/HTMLFolders/Logo.html" frameBorder="0" scrolling="no" width="950px" height="115px" marginheight="0"></iframe> </div> <!-- 用户登陆 --> <div align="center" class="user"> <iframe src="resources/HTMLFolders/UserLogin.html" mce_src="resources/HTMLFolders/UserLogin.html" frameBorder="0" scrolling="no" width="195px" height="150px" marginheight="0" marginwidth="0"></iframe> </div> <!-- 搜索 --> <div id="search" name="test" align="center" class="top_list_home"> <iframe id="frameSearch" name="search" src="resources/HTMLFolders/Search.html" mce_src="resources/HTMLFolders/Search.html" frameBorder="0" scrolling="no" width="195px" height="150px" marginheight="0" marginwidth="0"></iframe> </div> <!-- 导航条 --> <div align="center" class="navigation"> <iframe src="resources/HTMLFolders/Navigation.html" mce_src="resources/HTMLFolders/Navigation.html" frameBorder="0" scrolling="no" width="950px" height="25px" marginheight="0" marginwidth="0"></iframe> </div> <!-- 最新主题列表 --> <div align="center" class="newest_topic"> <iframe src="resources/HTMLFolders/Sublist.html" mce_src="resources/HTMLFolders/Sublist.html" frameBorder="0" scrolling="no" width="540px" height="427px" marginheight="0" marginwidth="0"></iframe> </div> <!-- 单位目录树 --> <div align="center" class="welcome_tag_home"> <iframe src="resources/HTMLFolders/DirectoryTree.html" mce_src="resources/HTMLFolders/DirectoryTree.html" frameBorder="0" scrolling="no" width="195px" height="427px" marginheight="0" marginwidth="0"></iframe> </div> <!-- 页尾 --> <div align="center" class="rights_home"> <iframe id="bottom" name="bottom" src="resources/HTMLFolders/Bottom.html" mce_src="resources/HTMLFolders/Bottom.html" frameBorder="0" scrolling="no" width="950px" height="100px" marginheight="0" marginwidth="0" allowTransparency="true" style="background-color: red" mce_style="background-color: red"></iframe> </div> </div> </body> </html> 被引用的文件UserLogin.html: <link rel="stylesheet" type="text/css" href="../css/global.css" mce_href="css/global.css"> <table border="0" align="left" width="193" cellpadding="1" cellspacing="0" style="border-style:solid;border-width:1px;border-color:#eeeeee;" mce_style="border-style:solid;border-width:1px;border-color:#eeeeee;"> <tr><td> <table border="0" align="left" width="190" cellpadding="0" cellspacing="0"> <tr> <td align="left" valign="middle" width="20" height="25" class="tdfnt12px" background="../images/title_bar2.png" > </td> <td align="left" valign="bottom" height="25" class="tdfnt12px" background="../images/title_bar2.png"> <font style="height:18px;font-family:宋体;font-size:14px;"> <b>会员登录</b></font> </td> </tr> </table> </td></tr> </table> <div id="divLogin" style="visibility:visible;position:absolute;left:10px;top:30px"> <table border="0" align="left" width="193" cellpadding="1" cellspacing="0" style="border-style:solid;border-width:0px;border-color:#eeeeee;" mce_style="border-style:solid;border-width:0px;border-color:#eeeeee;"> <tr> <td align="left" valign="bottom" height="45"><font class="normal">用户名:</font> <td valign="bottom"><input type="text" name="userAreaUserName" id="userAreaUserName" class="id" maxlength="16"/></td> </tr> <tr> <td align="left" height="40"><font class="normal">密码:</font> <td><input type="password" name="userAreaUserPwd" id="userAreaUserPwd" class="pwd" maxlength="16"/></td> </tr> <tr> <td align="center" colspan="2" class="tdfnt12px"> <input type="submit" value="登录" style="color:black;border-color:skyblue;border-style:solid;border- width:0px;vertical-align:middle;font-family:宋体;width:68px;height:24px;background:url(resources/images/ButtonBg02.png);"/> </td> </tr> </table> </div> 现在假设“最新主题列表”文件中有一个超链接,点击其,包含“最新主题列表”的iframe就重新加载,此时需要利用javascript来实现: <a href="" onclick="redirect(); return false">www.baidu.com</a> <mce:script language="javascript"><!-- function redirect() { parent.document.frames["frameSublist"].location.href="www.baidu.com" } // --></mce:script>
发表评论
-
include 与 jsp:include区别
2010-04-12 14:05 1034我们都知道在jsp中include有两种形式,分别是 ... -
jsessionid的困扰
2009-11-21 21:27 2493问题:向某银行发送支付请求时,如果客户端cookie开启,第一 ... -
servlet/jsp 获取绝对路径和相对路径
2009-09-17 10:55 968根目录所对应的绝对路径:request.getServletP ... -
JSP页面跳转大全
2009-09-02 22:28 1973JSP中的跳转: (1). forward()方法 使 ... -
JSP页面元素详解
2009-09-02 22:26 928document方法: getElementById(id) ... -
JSP中计算页面执行(处理)时间
2009-08-12 18:01 1710TimerFilter源码如下: package com.c ... -
框架、关闭窗口、状态栏、空链接经典问题大整理
2009-08-12 17:02 12181>当浏览器不支持“框架”时,给用户提示。 我们知 ... -
下拉菜单被表单、图片、FLASH挡住的解决办法
2009-08-12 16:58 2256设置Flash的参数: <param na ...
相关推荐
总结来说,"layui-iframe.rar"提供的内容可以帮助开发者深入理解和使用layui框架,特别是如何在后台管理系统中利用layui的iframe组件构建高效的多窗口布局。通过学习和实践,开发者能够掌握layui的模块化开发模式,...
- `<noscript><iframe src=*.html></iframe></noscript>` 可以阻止网页被“另存为”,但此方法并非万能,现代浏览器可能不会完全遵守。 - `查看网页源代码 onclick="window.location=''view-source:''+''...
2. **表格布局的应用**:熟悉表格标签的使用方法,了解其在特定场景下的优势与局限性。 3. **CSS美化网页**:掌握使用CSS进行网页美化的技巧,包括字体、颜色、边框等样式设置。 4. **盒子模型的理解与应用**:深入...
// ad function dy(code) ...document.writeln ('<iframe width="120" height="24" frameborder="0" allowtransparency="true" marginwidth="0" marginheight="0" scrolling="no" border="0" src=...
江苏省培育壮大数据企业行动方案(2025-2027年).docx
内容概要:本文详细解析了一个基于西门子200smart PLC的三泵联动恒压供水系统。该系统采用了“三层蛋糕”结构(底层硬件驱动、中间逻辑控制、上层HMI交互),并通过多个子程序实现了精确的压力控制、泵组调度、报警处理等功能。文中重点介绍了压力传感器数据处理、PID控制、泵组轮换机制、报警处理以及手动模式设计等方面的技术细节。此外,还分享了一些现场调试的经验教训,如量程转换、延时设置不当引发的问题及其解决方案。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是熟悉PLC编程和恒压供水系统的从业者。 使用场景及目标:适用于需要深入了解西门子200smart PLC编程技巧、恒压供水系统设计思路的人群。目标是帮助读者掌握如何构建稳定可靠的恒压供水控制系统,提高系统性能并减少故障发生。 其他说明:文章不仅提供了详细的代码片段和配置方法,还结合实际案例讲解了许多容易忽视但至关重要的细节,有助于提升读者的实际操作能力。
基于STM32设计的数字示波器全套资料(原理图、PCB图、源代码) 硬件平台: 主控器:STM32F103ZET6 64K RAM 512K ROM 屏幕器:SSD1963 分辨率:480*272 16位色 触摸屏:TSC2046 模拟电路: OP-TL084 OP-U741 SW-CD4051 CMP-LM311 PWR-LM7805 -LM7905 -MC34063 -AMS1117-3.3 DRT-ULN2003 6.继电器:信号继电器 7.电源:DC +12V 软件平台: 开发环境:RealView MDK-ARM uVision4.10 C编译器:ARMCC ASM编译器:ARMASM 连机器:ARMLINK 实时内核:UC/OS-II 2.9实时操作系统 GUI内核:uC/GUI 3.9图形用户接口 底层驱动:各个外设驱动程序 数字示波器功能: 波形发生器:使用STM32一路DA实现正弦,三角波,方波,白噪声输出。 任意一种波形幅值在0-3.3V任意可调、频率在一定范围任意可调、方波占空比可调。调节选项可以通过触摸屏完成设置。 SD卡存储: SD卡波形存储输出,能够对当前屏幕截屏,以JPG格式存储在SD卡上。能够存储1S内的波形数据,可以随时调用查看。 数据传输:用C#编写上位机,通过串口完成对下位机的控制。(1)实现STOP/RUN功能(2)输出波形电压、时间参数(3)控制截屏(4)控制波形发生器(5)控制完成FFT(6)波形的存储和显示 图形接口: UCGUI 水平扫速: 250 ns*、500ns、1μs、5 μs、10μs、50μs、500 μs、5ms 、50ms 垂直电压灵敏度:10mV/div, 20mV/div, 50mV/div, 0.1V/div, 0,2V/div, 0.5V/div, 1V/div,2V/
内容概要:本文详细介绍了如何使用Copula函数模型解决风电场出力相关性问题,并结合三点估计法(3PEM)进行概率潮流计算。首先,文章指出传统方法如正态分布假设无法有效处理风电场出力的非线性相关性,而Copula函数能够将边缘分布和相关结构分离处理,从而提高计算精度。文中提供了具体的Python代码示例,展示了如何构建Gaussian Copula模型以及进行Nataf变换,确保生成的样本符合实际物理空间的分布特征。此外,文章还强调了在处理多风电场场景时需要注意的问题,如协方差矩阵的正则化处理和Copula模型的选择。最后,通过实例验证,证明了该方法不仅提高了计算效率,还将电压越限概率的误差控制在较低范围内。 适合人群:从事电力系统研究、风电场规划与运营的技术人员,以及对概率潮流计算感兴趣的科研工作者。 使用场景及目标:适用于需要精确评估风电场出力相关性和进行概率潮流计算的场合,旨在提高计算效率和精度,优化电网调度决策。 其他说明:文章提醒读者在选择Copula模型时需根据具体数据特点进行调整,避免盲目套用特定模型导致拟合效果不佳。同时,在实际应用中应注意验证生成样本的统计特性,确保模型的有效性和可靠性。
Delphi 12.3控件之东软数据平台-SM4-加解密-demo.7z
板材智能材料库sw20可编辑_三维3D设计图纸_三维3D设计图纸.zip
龙门式主轴移动裁断机sw18可编辑_三维3D设计图纸_三维3D设计图纸.zip
内容概要:本文详细介绍了基于模型预测控制(MPC)的分布式光伏配电网有功无功协调优化方案。该方案采用多时间尺度优化策略,分为日前优化和日内校正两个层次。日前优化每小时生成计划曲线,考虑光伏和负荷预测;日内校正则每15分钟进行一次,根据实时数据调整计划。文中还讨论了将交流潮流方程转化为二阶锥规划(SOCP)的方法,以及储能系统在削峰填谷和误差补偿中的作用。实验结果显示,该方案显著提高了电压合格率和光伏消纳率。 适合人群:电力系统研究人员、从事配电网优化的工程师和技术人员。 使用场景及目标:适用于分布式光伏大规模接入配电网后的优化调度,旨在提高电压稳定性和光伏利用率,减少网损并优化设备使用。 其他说明:文中提供了详细的代码片段和数学模型,帮助读者理解和实现该优化方案。同时,强调了不同时间尺度变量耦合的重要性,并提出了未来改进方向,如使用LSTM+Attention进行光伏预测和分布式求解架构的应用。
2023-04-06-项目笔记-第四百六十二阶段-课前小分享_小分享1.坚持提交gitee 小分享2.作业中提交代码 小分享3.写代码注意代码风格 4.3.1变量的使用 4.4变量的作用域与生命周期 4.4.1局部变量的作用域 4.4.2全局变量的作用域 4.4.2.1全局变量的作用域_1 4.4.2.460局变量的作用域_460- 2025-04-08
电大土木工程力学复习题小抄.doc
缸体装配检测线sw20可编辑_三维3D设计图纸_三维3D设计图纸.zip
基于STM32 ob-jlink 调试器全套资料(原理图、PCB图、Hex文件) 本设计分享的是某宝开源的基于STM32F103C8T6的 ob-jlink 调试器全套资料,见附件下载。Link- OB 调试器最开始是出现在各大公司的评估板上,其名为on-board 简称OB。它是由SEGGER 开发的一套独立的仿真调试下载器。可以通过USB与PC通信,另一端通过SWD /JTAG方式与可支持器件通信,完成调试仿真下载调试任务。STM32 ob-jlink 调试器电路
带约束条件的优化算法麻雀搜索算法 matlab代码,直接运行
内容概要:本文详细介绍了如何利用Matlab和元胞自动机进行行人紧急疏散的模拟仿真。首先构建了一个20x30的二维网格房间模型,设置了出口、障碍物、行人和火灾源。通过三维矩阵记录每个单元格的状态,包括行人/障碍物、烟雾浓度和温度值。火灾扩散采用了热传导模型,考虑了材料燃烧特性,行人移动则基于动态场模型,结合出口吸引力、火灾排斥力和人群密度等因素。此外,还探讨了多层建筑的扩展方法,如引入楼梯单元和调整烟雾扩散规则。实验结果显示,当行人密度超过45%,出口处会出现“拱形堵塞”,烟雾能见度下降使疏散时间显著增加,设置中间避难区可有效降低伤亡率。 适合人群:对元胞自动机、Matlab编程以及紧急疏散模拟感兴趣的科研人员、学生和技术爱好者。 使用场景及目标:适用于研究复杂建筑环境中的紧急疏散策略,帮助优化建筑设计和应急响应措施,提高疏散效率和安全性。 其他说明:文中提供了详细的代码片段,涵盖了从环境初始化、火灾扩散、行人移动到可视化的完整流程。通过调整参数,可以观察不同的疏散现象,如拱形堵塞、路径切换等。
内容概要:本文详细介绍了如何使用 Qt 5.13.1 和 MinGW 实现高效的 Dock 窗口布局系统。主要内容涵盖自定义布局管理器、拖拽处理、定位算法、动画效果、层级管理和状态持久化等方面的技术细节。通过自定义 DockLayout 类和事件过滤器,实现了窗口的灵活拖拽和自动吸附功能。同时,利用几何计算和区域四分法优化了插入位置的判断逻辑,并通过动画效果提升了用户体验。此外,文章还讨论了窗口嵌套时的层级管理、状态持久化以及一些常见的坑点和解决方案。 适合人群:具有一定 C++ 和 Qt 编程经验的开发人员,尤其是从事桌面应用程序开发的工程师。 使用场景及目标:适用于需要实现复杂窗口布局和拖拽功能的应用程序开发,如集成开发环境 (IDE) 或者复杂的图形用户界面 (GUI) 应用。目标是提供类似 Visual Studio 的高效、流畅的窗口管理体验。 其他说明:文中提供了大量代码片段和实现细节,帮助读者深入理解各个功能模块的工作原理。同时,作者分享了许多实践经验,包括如何避免常见错误和提高性能的方法。
这份《智慧校园建设方案》详尽规划了如何通过科技手段全面升级校园管理、教学与生活,打造一个集信息化、智能化于一体的现代化校园环境。方案以教学和管理为核心,分阶段逐步推进,旨在实现校园生活的全面智慧化。 首先,方案从基础平台建设入手,构建了统一认证管理、基础信息库、应用接入及数据标准等核心框架,确保各业务系统间的高效协同与数据互通。通过这一基础平台,学校能够实现师生信息的统一管理、权限的精准控制以及第三方应用的无缝对接,为后续的智慧化应用奠定了坚实基础。在此基础上,方案进一步提出了才智门户、才智管理、才智教学等关键模块的建设。才智门户不仅为学校提供了功能模块化、智能化的建站系统,还通过家校帮客户端等移动端应用,增强了家校互动,让家长随时了解孩子在校情况,实现了教育的无缝连接。才智管理模块则涵盖了办公管理、学生管理、教务管理等多个方面,通过自动化流程、智能化分析,大幅提升了管理效率,减轻了教师负担。而才智教学模块更是亮点纷呈,从校本资源库的建设到课前导学、同步备课、互动课堂等环节的优化,不仅促进了教学资源的共享与利用,还通过科技手段激发了学生的学习兴趣,提升了教学效果。 尤为引人注目的是,方案还充分考虑到了校园生活的智慧化升级。通过整合智能手环、一卡通、门禁闸机、红外测温等硬件设施,方案为校园提供了门禁考勤、校内消费、教室申请、平安校园等智能化解决方案。学生佩戴智能手环即可轻松完成考勤、消费等操作,家长可实时掌握孩子的动态,学校则能更高效地管理校园资源与安全。此外,方案还规划了才智环境的长远建设,包括数字图书馆、创客空间、录播教室等创新空间的建设,以及红外测温、视频监控等安全系统的完善,旨在为学生营造一个安全、便捷、充满创意的学习环境。整个方案的实施将分阶段进行,确保每一步都稳扎稳打,逐步推进校园的智慧化转型。这份方案不仅展现了科技在教育领域的无限潜力,更为学校提供了一条清晰可行的智慧化建设路径,让校园管理更加高效,教学更加生动,生活更加便捷。