navigation
a webmaster learning community
     Home    Register     Search      Help      Login    
FrontPage Alternative
Sponsors

Shopping Cart Software
Ecommerce software integrated into Frontpage, Dreamweaver and Golive templates. No monthly fees and available in ASP and PHP versions.

Website Templates
We also have a wide selection of Dreamweaver, Expression Web and Frontpage templates as well as webmaster tools and CSS layouts.

Frontpage website templates
Creative Website Templates for FrontPage, Dreamweaver, Flash, SwishMax

Free FrontPage Templates

Search Forums
 

Advanced search
Recent Posts

 Todays Posts
 Most Active posts
 Posts since last visit
 My Recent Posts
 Mark posts read

 

SWF movie not playing in IE7 or AOL

 
View related threads: (in this forum | in all forums)

Logged in as: Guest
Users viewing this topic: none
Printable Version 

All Forums >> Web Design >> Web Graphics >> SWF movie not playing in IE7 or AOL
Page: [1]
 
treetopsranch

 

Posts: 1157
From: Cottage Grove, OR, USA
Status: offline

 
SWF movie not playing in IE7 or AOL - 5/19/2008 1:27:15   
Having one heck of a time trying to get SWF movies to play in IE 7 on Vista. Also does not play in AOL. Works super in Firefox.

Googling this problem shows that I am not the only one. But no good solutions. Some javascript solutions but that won't work if viewer has JS turned off. Many solutions call for changing IE's internet security options but that is not a solution when the movie is on your website as most viewers don't know diddly about changing IE's security options and won't do it anyway.

_____________________________

Don from TreeTops Ranch, Oregon

"I've got a taste for quality and luxury"

Tailslide

 

Posts: 6296
Joined: 5/10/2005
From: Out here on the raggedy edge
Status: online

 
RE: SWF movie not playing in IE7 or AOL - 5/19/2008 2:03:40   
What are you currently using to play the video?

Personally I use javascript - swfobject to be precise. I ensure I have a background image on the div where the video will play so that if they have JS off they'll see the image instead.

There's no perfect solution for things like this. You can use js and risk having nothing appear with js off (which is why you'd use a background image) or you can use object etc and even if the video plays, if they've got their security settings up high they won't see it...




_____________________________

"My strategy is so simple an idiot could have devised it"
Little Blue Plane Web Design | Blood, Sweat & Rust - A Land Rover restoration project

(in reply to treetopsranch)
jaybee

 

Posts: 14191
Joined: 10/7/2003
From: Berkshire, UK
Status: offline

 
RE: SWF movie not playing in IE7 or AOL - 5/19/2008 5:11:41   
Every time I put Flash on a site I end up trying something different. SOme work in almost all situations but they're a devil to implement, others work in one but not the other, some work in all but you have to click first if you're using IE.

AOL, sheesh, what can I say. AOL use IE but they muck around with it so it's not even native IE. I'm swinging more and more towards the "if you're using AOL it's your own fault" view.

_____________________________

If it ain't broke..... fix it until it is.
:)

:)
GAWDS
Now where did I put that Doctype?

(in reply to Tailslide)
treetopsranch

 

Posts: 1157
From: Cottage Grove, OR, USA
Status: offline

 
RE: SWF movie not playing in IE7 or AOL - 5/19/2008 12:42:11   
Thanks Jaybee, I just may go with a simple slide show script and forget the SWF adventure. Client likes the video effects that SWF provides but if it doesn't run on AOL or IE then whats the use? I may try your javascript solution even though some viewers turn JS off.

_____________________________

Don from TreeTops Ranch, Oregon

"I've got a taste for quality and luxury"


(in reply to jaybee)
Tailslide

 

Posts: 6296
Joined: 5/10/2005
From: Out here on the raggedy edge
Status: online

 
RE: SWF movie not playing in IE7 or AOL - 5/19/2008 14:25:49   
The javascript/SWF combo I use works fine in AOL and IE. May actually have been ufo rather than swf object - but probably both work fine.

_____________________________

"My strategy is so simple an idiot could have devised it"
Little Blue Plane Web Design | Blood, Sweat & Rust - A Land Rover restoration project

(in reply to treetopsranch)
treetopsranch

 

Posts: 1157
From: Cottage Grove, OR, USA
Status: offline

 
RE: SWF movie not playing in IE7 or AOL - 5/19/2008 14:41:54   
Tailslide, can I have your JS/SWF code?

_____________________________

Don from TreeTops Ranch, Oregon

"I've got a taste for quality and luxury"


(in reply to Tailslide)
Tailslide

 

Posts: 6296
Joined: 5/10/2005
From: Out here on the raggedy edge
Status: online

 
RE: SWF movie not playing in IE7 or AOL - 5/20/2008 2:18:40   
Sure can - I checked and last time I did this I used the ufo script which is this:

/* Unobtrusive Flash Objects (UFO) v3.12 <http://www.bobbyvandersluis.com/ufo/>
   Copyright 2005, 2006 Bobby van der Sluis
   This software is licensed under the CC-GNU LGPL <http://creativecommons.org/licenses/LGPL/2.1/>
*/

var UFO = {
   requiredAttrParams: ["movie", "width", "height", "majorversion", "build"],
   optionalAttrEmb: ["name", "swliveconnect", "align"],
   optionalAttrObj: ["id", "align"],
   optionalAttrParams: ["play", "loop", "menu", "quality", "scale", "salign", "wmode", "bgcolor", "base", "flashvars", "devicefont", "allowscriptaccess", "seamlesstabbing"],
   ximovie: "ufo.swf",
   xiwidth: "215",
   xiheight: "138",

   is_w3cdom: (typeof document.getElementById != "undefined" && typeof document.getElementsByTagName != "undefined" && (typeof document.createElement != "undefined" || typeof document.createElementNS != "undefined")),
   is_ie: (navigator.userAgent.toLowerCase().indexOf("msie") != -1 && navigator.userAgent.toLowerCase().indexOf("opera") == -1),
   is_safari: (navigator.userAgent.toLowerCase().indexOf("safari") != -1),
   is_win: (navigator.userAgent.toLowerCase().indexOf("win") != -1),
   is_mac: (navigator.userAgent.toLowerCase().indexOf("mac") != -1),
   is_XML: (typeof document.contentType != "undefined" && document.contentType.indexOf("xml") > -1),
   
   foList: [],
      
   create: function(FO, id) {
      if (!UFO.is_w3cdom) return;
      UFO.foList[id] = UFO.updateFO(FO);
      UFO.createStyleRule("#" + id, "visibility:hidden;");
      UFO.domLoad(id);
   },

   updateFO: function(FO) {
      if (typeof FO.xi != "undefined" && FO.xi == "true") {
         if (typeof FO.ximovie == "undefined") FO.ximovie = UFO.ximovie;
         if (typeof FO.xiwidth == "undefined") FO.xiwidth = UFO.xiwidth;
         if (typeof FO.xiheight == "undefined") FO.xiheight = UFO.xiheight;
      }
      else {
         FO.xi = false;
      }
      FO.domLoaded = false;
      return FO;
   },

   domLoad: function(id) {
      var timer = setInterval(function() { // doesn't work in IE/Mac
         if((document.getElementsByTagName("body")[0] != null || document.body != null) &&  document.getElementById(id) != null) {
            UFO.main(id);
            clearInterval(timer);
         }
      }, 250);
      if (typeof document.addEventListener != "undefined") {
         document.addEventListener("DOMContentLoaded", function() { UFO.main(id); clearInterval(timer); } , null); // Mozilla only
      }
   },

   main: function(id) {
      var FO = UFO.foList[id];
      if (FO.domLoaded) return; // for Mozilla, only execute once
      UFO.foList[id].domLoaded = true;
      document.getElementById(id).style.visibility = "hidden";
      if (UFO.hasRequiredAttrParams(id)) {
         if (UFO.hasFlashVersion(FO.majorversion, FO.build)) {
            if (typeof FO.setcontainercss != "undefined" && FO.setcontainercss == "true") {
               UFO.setContainerCSS(id);
            }
            UFO.writeFlashObject(id);
         }
         else if (FO.xi && UFO.hasFlashVersion("6", "65")) {
            UFO.createModalDialog(id);
         }
      }
      document.getElementById(id).style.visibility = "visible";
   },
   
   createStyleRule: function(selector, declaration) {
      if (UFO.is_ie && UFO.is_mac) return; // bugs in IE/Mac
      var head = document.getElementsByTagName("head")[0]; 
      var style = UFO.createElement("style");
      if (!(UFO.is_ie && UFO.is_win)) {
         var styleRule = document.createTextNode(selector + " {" + declaration + "}");
         style.appendChild(styleRule); // bugs in IE/Win
      }
      style.setAttribute("type", "text/css");
      style.setAttribute("media", "screen"); 
      head.appendChild(style);
      if (UFO.is_safari && UFO.is_XML) { head.innerHTML += ""; } // force Safari repaint for MIME type application/xhtml+xml
      if (UFO.is_ie && UFO.is_win && document.styleSheets && document.styleSheets.length > 0) {
         var lastStyle = document.styleSheets[document.styleSheets.length - 1];
         if (typeof lastStyle.addRule == "object") {
            lastStyle.addRule(selector, declaration);
         }
      }
   },
   
   setContainerCSS: function(id) {
      var FO = UFO.foList[id];
      var wUnit = (FO.width.indexOf("%") == -1) ? "px" : "";
      var hUnit = (FO.height.indexOf("%") == -1) ? "px" : "";
      UFO.createStyleRule("#" + id, "width:" + FO.width + wUnit +"; height:" + FO.height + hUnit +";");
      if (FO.width == "100%") {
         UFO.createStyleRule("body", "margin-left:0; margin-right:0; padding-left:0; padding-right:0;");
      }
      if (FO.height == "100%") {
         UFO.createStyleRule("html", "height:100%; overflow:hidden;");
         UFO.createStyleRule("body", "margin-top:0; margin-bottom:0; padding-top:0; padding-bottom:0; height:100%;");
      }
   },

   createElement: function(el) {
      return (typeof document.createElementNS != "undefined") ?  document.createElementNS("http://www.w3.org/1999/xhtml", el) : document.createElement(el);
   },

   hasRequiredAttrParams: function(id) {
      var FO = UFO.foList[id];
      for (var i = 0; i < UFO.requiredAttrParams.length; i++) {
         if (typeof FO[UFO.requiredAttrParams] == "undefined") return false;
      }
      return true;
   },
   
   hasFlashVersion: function(majorVersion, buildVersion) {
      var reqVersion = parseFloat(majorVersion + "." + buildVersion);
      if (navigator.plugins && typeof navigator.plugins["Shockwave Flash"] == "object") {
         var desc = navigator.plugins["Shockwave Flash"].description;
         if (desc) {
            var versionStr = desc.replace(/^.*\s+(\S+\s+\S+$)/, "$1");
            var major = parseInt(versionStr.replace(/^(.*)\..*$/, "$1"));
            var build = (versionStr.indexOf("r") == -1) ? 0 : parseInt(versionStr.replace(/^.*r(.*)$/, "$1"));
            var flashVersion = parseFloat(major + "." + build);
         }
      }
      else if (window.ActiveXObject) {
         try {
            var flashObj = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
            var desc = flashObj.GetVariable("$version");
            if (desc) {
               var versionArr = desc.replace(/^\S+\s+(.*)$/, "$1").split(",");
               var major = parseInt(versionArr[0]);
               var build = parseInt(versionArr[2]);
               var flashVersion = parseFloat(major + "." + build);
            }
         }
         catch(e) {}
      }
      if (typeof flashVersion != "undefined"){
         return (flashVersion >= reqVersion ? true : false);
      }
      return false;
   },

   writeFlashObject: function(id) {
      var el = document.getElementById(id);
      if (typeof el.innerHTML == "undefined") return;
      var FO = UFO.foList[id];
      if (navigator.plugins && typeof navigator.plugins["Shockwave Flash"] == "object") {
         try   { // older versions of Gecko only support innerHTML get and not set
            el.innerHTML = "ufo-test";
         }
         catch (e) {}
         if (el.innerHTML != "ufo-test") {
            while(el.hasChildNodes()) {
               el.removeChild(el.firstChild);
            }
            var embed = UFO.createElement("embed");
            embed.setAttribute("type", "application/x-shockwave-flash");
            embed.setAttribute("pluginspage", "http://www.macromedia.com/go/getflashplayer");
            embed.setAttribute("src", FO.movie);
            embed.setAttribute("width", FO.width);
            embed.setAttribute("height", FO.height);
            for (var i = 0; i < UFO.optionalAttrEmb.length; i++) {
               if (typeof FO[UFO.optionalAttrEmb] != "undefined") {
                  embed.setAttribute(UFO.optionalAttrEmb, FO[UFO.optionalAttrEmb]);
               }
            }
            for (var i = 0; i < UFO.optionalAttrParams.length; i++) {
               if (typeof FO[UFO.optionalAttrParams] != "undefined") {
                  embed.setAttribute(UFO.optionalAttrParams, FO[UFO.optionalAttrParams]);
               }
            }  
            el.appendChild(embed);
         }
         else {
            var embHTML = "";
            for (var i = 0; i < UFO.optionalAttrEmb.length; i++) {
               if (typeof FO[UFO.optionalAttrEmb] != "undefined") {
                  embHTML += ' ' + UFO.optionalAttrEmb + '="' + FO[UFO.optionalAttrEmb] + '"';
               }
            }
            for (var i = 0; i < UFO.optionalAttrParams.length; i++) {
               if (typeof FO[UFO.optionalAttrParams] != "undefined") {
                  embHTML += ' ' + UFO.optionalAttrParams + '="' + FO[UFO.optionalAttrParams] + '"';
               }
            }
            el.innerHTML = '<embed type="application/x-shockwave-flash" src="' + FO.movie + '" width="' + FO.width + '" height="' + FO.height + '" pluginspage="http://www.macromedia.com/go/getflashplayer"' + embHTML + '></embed>';
         }
      }
      else {
         var objAttrHTML = "";
         for (var i = 0; i < UFO.optionalAttrObj.length; i++) {
            if (typeof FO[UFO.optionalAttrObj] != "undefined") {
               objAttrHTML += ' ' + UFO.optionalAttrObj + '="' + FO[UFO.optionalAttrObj] + '"';
            }
         }
         var objParamHTML = "";
         for (var i = 0; i < UFO.optionalAttrParams.length; i++) {
            if (typeof FO[UFO.optionalAttrParams] != "undefined") {
               objParamHTML += '<param name="' + UFO.optionalAttrParams + '" value="' + FO[UFO.optionalAttrParams] + '" />';
            }
         }
         var protocol = (window.location.protocol == "https:" ? "https:" : "http:");
         el.innerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + objAttrHTML + ' width="' + FO.width + '" height="' + FO.height + '" codebase="' + protocol + '//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + FO.majorversion + ',0,' + FO.build + ',0"><param name="movie" value="' + FO.movie + '" />' + objParamHTML + '</object>';
      }
   },
   
   cleanupIELeaks: function() {
      var objects = document.getElementsByTagName("OBJECT");
      for (var i = 0; i < objects.length; i++) {
         for (var x in objects) {
            if (typeof objects[x] == "function") {
               objects[x] = null;
            }
         }
      }
   },

   createModalDialog: function(id) {
      var FO = UFO.foList[id];
      UFO.createStyleRule("html", "height:100%; overflow:hidden;");
      UFO.createStyleRule("body", "height:100%; overflow:hidden;");
      UFO.createStyleRule("#xi-con", "position:absolute; left:0; top:0; z-index:1000; width:100%; height:100%; background-color:#333; filter:alpha(opacity:50); -khtml-opacity:0.5; -moz-opacity:0.5; opacity:0.5;");
      UFO.createStyleRule("#xi-mod", "position:absolute; left:50%; top:50%; margin-left: -" + (parseInt(FO.xiwidth)/2) + "px; margin-top: -" + (parseInt(FO.xiheight)/2) + "px; width:" + FO.xiwidth + "px; height:" + FO.xiheight + "px;");
      var body = document.getElementsByTagName("body")[0];
      var container = UFO.createElement("div");
      container.setAttribute("id", "xi-con");
      var dialog = UFO.createElement("div");
      dialog.setAttribute("id", "xi-mod");
      container.appendChild(dialog);
      body.appendChild(container);
      var MMredirectURL = window.location;
      document.title = document.title.slice(0, 47) + " - Flash Player Installation";
      var MMdoctitle = document.title;
      var MMplayerType = (UFO.is_ie && UFO.is_win) ? "ActiveX" : "PlugIn";
      var xiUrlCancel = (typeof FO.xiurlcancel != "undefined") ? "&xiUrlCancel=" + FO.xiurlcancel : "";
      var xiUrlFailed = (typeof FO.xiurlfailed != "undefined") ? "&xiUrlFailed=" + FO.xiurlfailed : "";
      UFO.foList["xi-mod"] = { movie:FO.ximovie, width:FO.xiwidth, height:FO.xiheight, majorversion:"6", build:"65", flashvars:"MMredirectURL=" + MMredirectURL + "&MMplayerType=" + MMplayerType + "&MMdoctitle=" + MMdoctitle + xiUrlCancel + xiUrlFailed };
      UFO.writeFlashObject("xi-mod");
   },

   expressInstallCallback: function() {
      var body = document.getElementsByTagName("body")[0];
      var dialog = document.getElementById("xi-con");
      body.removeChild(dialog);
      UFO.createStyleRule("body", "height:auto; overflow:auto;");
      UFO.createStyleRule("html", "height:auto; overflow:auto;");
   }

};

if (typeof window.attachEvent != "undefined" && UFO.is_ie && UFO.is_win) {
   window.attachEvent("onunload", UFO.cleanupIELeaks);
}


You might want to check that's the most up to date version. Save this in a file as ufo.js.

On the html page itself I've got this in the document head:

<script type="text/javascript" src="scripts/ufo.js"></script>
<script type="text/javascript">
    var FO = { movie:"yourflashmovie.swf", width:"288", height:"252", majorversion:"6", build:"0" };
    UFO.create(FO, "video");
</script>


Where the first script tag links to the previously posted ufo.js and the second is what does the trick in the page itself - the variables are reasonably self-explanatory except the "video" one which is the name of the div in which the flash movie sits on the page which looks like this:

<div id="video">
  <img src="images/background" alt="your flash movie"  />
</div>


The image in there is in case the flash can't be seen for some reason - you could probably just use a background image actually.

On the script homepage you'll find a load of other attributes that you can add to the flash movie - I haven't yet needed to use those.

_____________________________

"My strategy is so simple an idiot could have devised it"
Little Blue Plane Web Design | Blood, Sweat & Rust - A Land Rover restoration project

(in reply to treetopsranch)
treetopsranch

 

Posts: 1157
From: Cottage Grove, OR, USA
Status: offline

 
RE: SWF movie not playing in IE7 or AOL - 5/20/2008 9:23:44   
Thank you, Tailslide

_____________________________

Don from TreeTops Ranch, Oregon

"I've got a taste for quality and luxury"


(in reply to Tailslide)
Page:   [1]

All Forums >> Web Design >> Web Graphics >> SWF movie not playing in IE7 or AOL
Page: [1]
Jump to: 1





New Messages No New Messages
Hot Topic w/ New Messages Hot Topic w/o New Messages
Locked w/ New Messages Locked w/o New Messages
 Post New Thread
 Reply to Message
 Post New Poll
 Submit Vote
 Delete My Own Post
 Delete My Own Thread
 Rate Posts