我正在用我的学校作业(dreamfoxgames.com)建立一个网站。
如果您单击一个名为“播放”的按钮,则会在 Flash 或统一插件中随游戏一起弹出一个弹出窗口/模式。我的问题是当访问者加载页面时,他们会自动加载 Flash 文件。这意味着音乐将开始播放,并且页面加载速度会很慢(所有这些游戏)。
有没有办法只在有人点击播放按钮后才加载 Flash 播放器?
非常感谢!
我正在用我的学校作业(dreamfoxgames.com)建立一个网站。
如果您单击一个名为“播放”的按钮,则会在 Flash 或统一插件中随游戏一起弹出一个弹出窗口/模式。我的问题是当访问者加载页面时,他们会自动加载 Flash 文件。这意味着音乐将开始播放,并且页面加载速度会很慢(所有这些游戏)。
有没有办法只在有人点击播放按钮后才加载 Flash 播放器?
非常感谢!
您可以使用swfobject在 div 中加载 swf 内容。
假设您的 html 中有一个 div,如下所示
<!DOCTYPE html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<script>
</head>
<body>
<div id="myContent">
swf will be embedded here
</div>
<button onclick="playSwf()">Click to play swf</button>
</body>
</html>
玩swf..
<script type="text/javascript">
function playSwf()
{
//Syntax
//swfobject.embedSWF(swfUrl, id, width, height, version,
// expressInstallSwfurl, flashvars, params,
// attributes, callbackFn)
//optional parameters omitted
swfobject.embedSWF("test.swf", "myContent", "400", "400","10");
}
</script>
也可以使用嵌入元素来完成(不需要外部 api):
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
var flashEmbed = null;
function startFlash() {
if(flashEmbed != null) {
document.getElementById("flashContainer").removeChild(flashEmbed);
}
flashEmbed = document.createElement("embed");
document.getElementById("flashContainer").appendChild(flashEmbed);
flashEmbed.src="Flashfile.swf";
flashEmbed.type="application/x-shockwave-flash";
}
</script>
</head>
<body>
<button onclick="startFlash()">start flash</button>
<div id="flashContainer"></div>
</body>
</html>