摘要:為何要用不同網域的 Iframe?通常較具規模的網站,會考慮這樣的安全性問題:當要使用到第三方所提供的 JavaScript 時,得放置在與頁面完全不同網域的 Iframe 中。例如在 Yahoo! 工作時,生活+與UrMap合作的地圖就是放在另一個網域的 Iframe 中的。若不這樣子做,UrMap 網站的 JavaScript 可以隨時竄改 Yahoo! 網頁的內容、甚至危害到使用者。用不同網域的 Iframe 來放置第三方程式碼的情形,簡單來說就是:「我不信任你的程式、但我需要你的程式成為我網頁中的一部分功能」(除了 Iframe,另外還有 ADSafe、Caja、Flash 等方式可以
阅读全文
摘要:码大致如下Javascript代码vara=(function(){vara=function(...,param){returnnewa.fn.init(...,param)}a.fn=a.prototype={init:function(...){...this.param=param}callback:function(response){this.param//这里似乎this发生改变,this.param值为undefined...}getData:function(){//通过ajax获得数据,然后回调callbackdoGetAjax(url,data,this.callback
阅读全文
摘要:json包括两种数据结构,一种类似于哈希表,另外一种类似于数组。简单的说,就是用xml传输数据的一个替代方案,传的字节数更少,传输的过程实质上是用{}或者[]包裹的字符串,在代码短解释对象。{}对应于object,[]对应于array,在代码端同样可以做反向操作。现在很多基于ajax的应用都是在服务器端获取数据,然后生成json,传到客户端,然后在客户端渲染界面。。再简单点,就是一种特定格式的字符串OK,了解了JSON的结构,我们就可以回来看一下JQuery中的$.getJSON()方法了。该方法有三个参数,$.getJSON(String url, Hash params, Function
阅读全文
摘要:关于跨域名问题还是问题么,这方面的解决实践非常多,今天我就旧话重提把我所知道的通过几个应用场景来分别总结一下先说明一点:我说的某某域名在您的控制下的意思是这个域名下的网页由您来负责开发内部的JavaScript场景一:将bbs.xxx.com的页面用iframe嵌入到www.xxx.com的中,如何在iframe内外使用js通信一级域名都是xxx.com 这个域名一定是在您的控制下,所以你只要在两个页面中同时升级域名即可在父窗口和iframe内部分别加上js语句:document.domain="xxx.com";之后2个页面就等于在同一域名下,通过window.paren
阅读全文
摘要:url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和delete也可以使用,但仅部分浏览器支持。timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为false。注意,同步请求将锁住浏览器,用户其他操作必须等待请求完成才可以执行。cache:要求为Bool
阅读全文
摘要:AN UPDATE IN THE ERA OF HTML5 (MAY 6, 2011)This post has been heavily commented and linked to over the years, and continues to receive a ton of traffic, so I should make it clear that much of this is no longer relevant for modern browsers. On the one hand, they have adjusted and tightened up their s
阅读全文
摘要:The mashup problemAccording to my coworkerDouglas Crockford,Mashups are the most interesting advancement in software development in decades. They are also unsafe in the current generation of browsers. Lately, Douglas has been spending some time convincing the main browser vendors that mashups need t
阅读全文
摘要:很多人一直都有个想法,要是可以随心所欲的操作iframe就好了。这样静态页面也就有了相当于后台动态页面php,jsp,asp中include,require实现统一多页面布局的能力。通过Javascript的帮忙我们可以像后台一样动态加载操作iframe对象属性src指向的html页面的内容。这样的操作需要提供两个页面,一个页面是iframe所在页面(页面名称:iPage.html),另一个页面是iframe属性src指向页面(页面名称:srcPage.html)。iPage.html,里dom:srcPage.html,里dom:妹妹的一天早上吃早点,中午约会吃饭,下午K歌,晚上和哥哥瞎折腾
阅读全文
摘要:通过iframe实现跨域通信iframe还是很强大的,不仅能实现同域通信,还可以跨域通信,甚至跨协议通信(如file/http),如果再结合jsonp,那就有很多种玩法了。不过有几条原则需要记住:当前层级中的任何Window都可以获取其他Window(iframe也是一个Window)只有同域Window才可以互相操作当前层级下的任何Window可以设置其他Window的location,即使是不同的域当你改变url的hashtag(#后面的东东)时,页面不会刷新举例来说,有这么个页面 可以在当前页面设置proxy iframe的location(原则1,3,4)//...
阅读全文
摘要:js跨域是个讨论很多的话题。iframe跨域访问也被研究的很透了。一般分两种情况:一、 是同主域下面,不同子域之间的跨域; 同主域,不同子域跨域,设置相同的document.domian就可以解决; 父页访问子页,可以document.getElementById("myframe").contentWindow.document来访问iframe页面的内容;如果支持contentDocument也可以直接document.getElementById("myframe").contentDocument访问子页面内容; 子页访问父页,可以parent.
阅读全文
摘要:按情境分1、不跨域时2、主域相同、子域不同时3、主域不同不跨域时访问iframe: contentWindow访问父级:parent访问顶级:topa.htmlA这是高层的密码!看看员工在说什么员工们:b.htmlJSONP方式这是员工的密码!看看领导在说什么跨域时1、主域相同、子域不同使用document.domain=主域名a.html(http://a.xxx.com/js/crossdomain/demo/a.htm)A这是高层的密码!看看员工在说什么员工们:b.html((http://b.xxx.com/com/js/crossdomain/demo/b.htm))JSONP方式这
阅读全文
摘要:一、需求与遇到的问题 在网站的后台管理中使用了iframe框架布局,包括顶部菜单、左侧导航和主页面。需求是:点击主页面上的一个按钮,在顶部菜单栏的右侧显示“退出”链接,点击可退出系统。 我的思路是:在顶部的菜单页面放一个不可见的“退出”链接,当用户点击位于iframe中的主页面(mainPage.htm)中的按钮时,在顶部菜单页面的右侧显示“退出”。 我现在遇到的问题是:如何在页面的一个iframe子页面(mainPage.htm)中获取并且操作其它iframe子页面(比如topPage.htm)中的HTML元素?二、通过JS获取并操作iframe中的元素来解决问题 这里主要就是通过J...
阅读全文