window實現跨頁面傳輸資料
阿新 • • 發佈:2018-11-25
一般在js中定義變數的時候禁止使用name 作為屬性名 ,因為 我們可以使用window.name實現頁面的跨域傳輸
新建一個頁面非常簡單 ,用於提供資料
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <script> window.name='var num = 100;'; </script> </body> </html>
新建一個頁面 用於接收資料 註釋寫在頁面中
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <button>點我</button> <script> //獲取另一個頁面的資料,則那個頁面必須被載入 document.querySelector('button').onclick = function(eve){ //定義iframe載入資料提供的頁面 var iframe = document.createElement('iframe'); iframe.src='anotherPage.html'; iframe.style.display='none'; document.body.appendChild(iframe); //載入成功後獲得資料 iframe.onload = function (eve) { var e = eve||window.event; var t = e.target|| e.srcElement; var iframeWindowName =t.contentWindow.name; console.log(typeof iframeWindowName); eval(iframeWindowName);//將字串轉為程式碼 console.log(num); } } </script> </body> </html>