js操作跨域iframe


這是我在群里看到別人討論的東西,先記着   看看對以后有沒有幫助

我給Iframe 加了runat="server" 后台怎么獲取加載完的 hmtl代碼或元素值

 我覺得可以先從父頁面用js操控iframe里面的html,在父頁面拿到值后自己處理,只是你的iframe頁里面是js生成的,時機判斷好做好 
 
 注冊一個事件,去監控他的加載狀態
你在外部去注冊這個事件
這就和通過iframe異步上傳文件一樣 (那得有權限改iframe里面的頁面)
 
 不該他
你只要有iframe的控制權就夠了
而iframe是你自己的元素
想怎么玩就怎么玩
等他ok了.取innerHTMl送給服務器就完事了

iframe權限怎么獲取啊

我iframe里面有個js是頁面加載完等10秒才執行,然后改動頁面一個元素的值,你怎么知道我的js執行了沒

我認為js行不通 試了很多次
跨域 獲取不到

跨域也能用js取值


問題是他要取什么值嘛
取一個頁面里面用js生成的值拿很難,光取請求生成的還是有可能的。。。

iframe如果調用的是另一個域名里面的東西,這個跨域實現js有點復雜 
不是簡單的一個 調用頁面 和 被調用頁面的問題 

恩,百度了下,js操作跨域iframe貌似很難,可是我上面那句說的是ajax的跨域取值。。。

ajax跨域,好像也不能吧 

現在關鍵在於他跨域的頁面里面是js生成的,如果不是js,直接后台模擬get把html取回來分析也是行的,但是是js生成的,那時機就不好掌握了,除非那個頁面有個東東標記js是否執行,然后后台一直模擬提交取html,發現html有某個值才結束取值


ajax跨域是可以滴,情況比較嚴格而已

用webbrowser控件吧
可以判斷js是不是執行完了

恩,能判斷js執行完就萬事大吉了


不過人家僅僅是iframe
可以去看看phantom api
var page = require('webpage').create();
var url = ' http://www.phantomjs.org/';
page.open(url, function (status) {
  //Page is loaded!
  phantom.exit();
});
看看這種方式能不能捕獲到 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM