Javascript自定义函数判断网站访问类型是PC还是移动终端

  由于很多移动终端不支持 Flash,因此 许多绚丽多彩的 Flash效果出不来。如果,能够判断出访问Web网页的类型(PC还是移动终端)。就可以对症下药,找出解决的办法!

  访问的类型为移动终端我们就用.gif代替Flash(.swf后缀)动画,PC端就不做改变。这样就比较完美了!

  如下所示,函数 flashChecker() 就是用来检测访问的类型。

  

复制代码 代码如下:

  <script language="javascript" type="text/javascript">

  /*

  *用来检测是 PC还是移动终端

  *返回:flashChecker().f == true PC终端

  * 反之为移动终端

  */

  function flashChecker() {

  var hasFlash = 0;

  var flashVersion = 0;

  var isIE = /*@cc_on!@*/0;

  if (isIE) {

  var swf = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");

  if (swf) {

  hasFlash = 1;

  VSwf = swf.GetVariable("$version");

  flashVersion = parseInt(VSwf.split(" ")[1].split(",")[0]);

  }

  }

  else {

  if (navigator.plugins && navigator.plugins.length > 0) {

  var swf = navigator.plugins["Shockwave Flash"];

  if (swf) {

  hasFlash = 1;

  var words = swf.description.split(" ");

  for (var i = 0; i < words.length; ++i) {

  if (isNaN(parseInt(words[i]))) {

  continue;

  }

  flashVersion = parseInt(words[i]);

  }

  }

  }

  }

  return {

  f: hasFlash, v: flashVersion

  };

  }

  </script>

  扩充:

  

复制代码 代码如下:

  <script language="javascript" type="text/javascript">

  /*

  * 根据参数 输出swf动画

  * url :单击 swf动画 后的跳转地址

  * swfLink: *.swf 素材地址

  */

  function GetSwfHtml(url, swfLink) {

  html = "<a style='position: absolute; top: 0; left: 0; bottom: 0; right: 0; display: block; " +

  "width: 100%; height: expression(this.parentNode.scrollHeight); filter: alpha(opacity=0);" +

  "opacity: 0; background: #FFF;' href='" + url + "' target='_blank'>" +

  "</a>" +

  "<object width='590' height='55' align='middle'>" +

  "<param name='allowScriptAccess' value='never' />" +

  "<param name='quality' value='high' />" +

  "<param name='wmode' value='transparent' />" +

  "<param name='movie' value='" + swfLink+ "' />" +

  "<embed wmode='transparent' src='" + swfLink+ "' quality='high' " +

  "width='590' height='55' align='middle' allowscriptaccess='never' type='application/x-shockwave-flash' " +

  "pluginspage='" + url + "' />" +

  "</object>";

  return html;

  }

  </script>