下面是针对“js获取html参数及向swf传递参数应用介绍”的完整攻略。
1. JS获取HTML参数
1.1 通过 URL 参数获取
JS获取 HTML 参数的最简单方法是解析 URL 参数。通过 window.location.search
可以获取到 URL 中的查询字符串部分,这个部分包含了所有的参数和它们的值。
示例:
const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString);
const name = urlParams.get('name');
const age = urlParams.get('age');
在这个示例中,我们首先获取了 URL 中的查询字符串部分,然后使用 URLSearchParams
对象解析出参数及它们的值。最后通过 get
方法获取到了 name
和 age
参数的值。
1.2 通过 HTML 元素属性获取
另一种获取 HTML 参数的方法是通过 HTML 元素属性获取。例如在下面的 HTML 代码中:
<div id="myDiv" data-name="John" data-age="23"></div>
我们可以通过 data-*
属性获取到 myDiv
元素的 name
和 age
参数的值。
示例:
const myDiv = document.getElementById('myDiv');
const name = myDiv.dataset.name;
const age = myDiv.dataset.age;
2. 向 SWF 传递参数
向 SWF 文件传递参数也是常见需求之一,下面介绍两种方法实现:
2.1 通过 FlashVars 传递参数
FlashVars 是向 Flash 文件传递参数的一种方法,它可以在 HTML 文件中的 object
或 embed
元素中设置。当 Flash 文件加载时,它可以通过 root.loaderInfo.parameters
对象访问到传递过来的参数。
示例:
<object id="myFlash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
width="550" height="400" codebase="http://download.macromedia.com/
pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0">
<param name="movie" value="myflash.swf" />
<param name="FlashVars" value="name=John&age=23" />
<embed src="myflash.swf" width="550" height="400" FlashVars="name=John&age=23">
</embed>
</object>
<script>
const myFlash = document.getElementById('myFlash');
const name = myFlash.loaderInfo.parameters.name;
const age = myFlash.loaderInfo.parameters.age;
</script>
在这个示例中,我们在 object
和 embed
元素中使用了 FlashVars 传递了 name
和 age
参数的值。
2.2 通过 JavaScript 调用 ActionScript 传递参数
还有一种通过 JavaScript 向 SWF 传递参数的方法,就是通过 ExternalInterface 调用 ActionScript 函数,并将 JS 中的参数传递给它。
示例:
const swf = document.getElementById('mySWF');
// 调用 ActionScript 函数
swf.setParams('John', 23);
在这个示例中,我们调用了名为 setParams
的 ActionScript 函数,并传递了 John
和 23
两个参数。在 SWF 文件中,需要定义 setParams
函数,并接收这两个参数。
以上就是“JS获取HTML参数及向swf传递参数应用介绍”的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js获取html参数及向swf传递参数应用介绍 - Python技术站