国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

JS控制靜態(tài)頁(yè)面之間傳遞參數(shù)獲取參數(shù)并應(yīng)用的簡(jiǎn)單實(shí)例

2019-11-20 09:16:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在項(xiàng)目中遇到這也一個(gè)問(wèn)題:

有a.html和b.html。

1.a頁(yè)面已經(jīng)打開,b頁(yè)面尚未打開,我希望在a頁(yè)面設(shè)置好一些列參數(shù),比如背景色,寬度等參數(shù),傳遞給b頁(yè)面,好讓b頁(yè)面在打開就能應(yīng)用。

2.a頁(yè)面已經(jīng)打開,b頁(yè)面無(wú)論是否打開。在a頁(yè)面需要獲取到b頁(yè)面的一些元素甚至變量,以便于應(yīng)用到a頁(yè)面。

注意:不涉及跨域問(wèn)題。

想了很久,終于想到了解決方案。

第一個(gè)問(wèn)題,我們可以利用html頁(yè)面錨點(diǎn)的特性,將參數(shù)通過(guò)url傳遞給b頁(yè)面

這是a頁(yè)面代碼:

<button>跳轉(zhuǎn)設(shè)置</button>  <script>  var btn = document.querySelector('button');  console.log(window);    btn.addEventListener('click', function(){  window.location = 'ci.html#bgc=#369?wd=500'  })  </script> 

由代碼可以知道,點(diǎn)擊按鈕跳轉(zhuǎn)頁(yè)面,跳轉(zhuǎn)的url后面多了一系列參數(shù),這個(gè)并不會(huì)影響跳轉(zhuǎn)的地址,當(dāng)b頁(yè)面打開后,可以獲取location截取字符串獲得變量及變量值,再進(jìn)行應(yīng)用。

這是b頁(yè)面代碼:

<div></div>  <script>  var div = document.querySelector('div');  var bl = window.location.hash.slice(1).split('?');  if(bl.length >= 1){  for(var i = 0; i < bl.length; i += 1){  switch (bl[i].split('=')[0]) {  case 'bgc':  document.body.style.background = bl[i].split('=')[1];  break;  case 'wd':  div.style.width = bl[i].split('=')[1] + 'px';  break;  default:  null;  break;  }  }  }  </script> 

通過(guò)截取字符串取得url傳遞過(guò)來(lái)的變量應(yīng)用。成功!

第二個(gè)問(wèn)題,我想的是通過(guò)iframe來(lái)達(dá)到目的,這只是一個(gè)障眼法。

在a頁(yè)面動(dòng)態(tài)創(chuàng)建一個(gè)iframe,并設(shè)置src值為b頁(yè)面,display為none。再通過(guò)iframe的contentDocument屬性獲取返回的iframe的文檔。

在文檔內(nèi)獲取到所需要的元素并應(yīng)用。

源碼:

<span>11111111111</span>  <script>  var fram = document.createElement('iframe');  fram.src = 'http://www.vip.com/kongzhi/fram2.html';  fram.style.display = 'none';  document.body.appendChild(fram);  fram.onload = function(){  var doc = fram.contentDocument || fram.contentWindow.document;  var p = doc.querySelector('p');  document.body.appendChild(p);  }  </script> 

以上這篇JS控制靜態(tài)頁(yè)面之間傳遞參數(shù)獲取參數(shù)并應(yīng)用的簡(jiǎn)單實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 济宁市| 巴中市| 阳春市| 蚌埠市| 温州市| 万源市| 淮北市| 乐至县| 木兰县| 永兴县| 巴中市| 镇原县| 资源县| 平武县| 普兰店市| 永平县| 桦南县| 天津市| 洛扎县| 乌兰察布市| 进贤县| 宝应县| 长沙市| 台东县| 法库县| 淅川县| 宜丰县| 马龙县| 益阳市| 报价| 略阳县| 巴青县| 平邑县| 崇义县| 玉树县| 富民县| 荣昌县| 盈江县| 昌图县| 睢宁县| 社会|