• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Javascript-AGE HELP!

Status
Not open for further replies.
I cannot for the life of me figure out why I keep on getting this error in IE6 and IE7.

I have to make sure that this shit works in both ie6and7 as much as I don't want to.

Picture of said error:
sorb69.jpg


I have traced it down to the slideshow that runs in the page.
Code:
The code for the slideshow in the html is: 
<div id='slideshow'>
  <!-- Begin XML Flash Slideshow v3 -->
  <script type="text/javascript">
// <![CDATA[
XMLFlashSlideshow_v3({swf:'v3flashslideshow/slideshow.swf',w:'600',h:'400',redirect:'',usePreloader:'true',xml:'v3flashslideshow/slideshow_data9.xml',preventCache:'true',disableMultipleXML:'false',initXML:'%3C?xml%20version=%221.0%22%20encoding=%22utf-8%22?%3E%3Cslideshow%20version=%223%22%3E%3Cstyles%3E%3CPreloader%20label=%22Loading%20%7BN%7D%2525%22%20iconColor=%22#666666%22%20iconAlpha=%2270%22%20iconWidth=%2250%22%3E%3C/Preloader%3E%3CPreloaderLabel%20font=%22Verdana%22%20size=%2210%22%20color=%22#666666%22%20bold=%22false%22%3E%3C/PreloaderLabel%3E%3CBackground%20backgroundColor=%22#E4E4E4%22%20backgroundAlpha=%22100%22%20bevelColor=%22#FFFFFF%22%20bevelStrength=%2270%22%20borderWidth=%220%22%20borderColor=%22#FF6600%22%3E%3C/Background%3E%3CLoaderAnimation%20type=%22circle%22%20color=%22#FFFFFF%22%20alphaBackground=%2220%22%20alphaInner=%2240%22%20frameWidth=%222%22%20width=%2250%22%20height=%2250%22%3E%3C/LoaderAnimation%3E%3CDataLoader%20useAnimation=%22true%22%20useLabel=%22true%22%20labelPlacement=%22bottom%22%20fadeOutDuration=%22400%22%20textFormat=%22loader_text%22%3E%3C/DataLoader%3E%3C/styles%3E%3Clocalization%3E%3Ctext%20orig=%22Loading%20Data...%22%20local=%22Loading%20Data...%22%3E%3C/text%3E%3C/localization%3E%3Cfonts%3E%3Cfont%20id=%22loader_text%22%20name=%22Pixelade%22%20embed=%22true%22%20size=%2213%22%20color=%22#666666%22%20bold=%22false%22%20selectable=%22false%22%20align=%22left%22%3E%3C/font%3E%3C/fonts%3E%3C/slideshow%3E'});

// ]]>
  </script>
I am calling the slideshow in the header with this:
Code:
<script type="text/javascript" src="v3flashslideshow/slideshow.js"></script>

The javascript for the actual slideshow is this:
Code:
if(typeof deconcept=="undefined"){var deconcept=new Object();}
if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}
if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}
deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){
if(!document.createElement||!document.getElementById){return;}
this.DETECT_KEY=_b?_b:"detectflash";
this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);
this.params=new Object();
this.variables=new Object();
this.attributes=new Array();
if(_1){this.setAttribute("swf",_1);}
if(id){this.setAttribute("id",id);}
if(w){this.setAttribute("width",w);}
if(h){this.setAttribute("height",h);}
if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}
this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion(this.getAttribute("version"),_7);
if(c){this.addParam("bgcolor",c);}
var q=_8?_8:"high";
this.addParam("quality",q);
this.setAttribute("useExpressInstall",_7);
this.setAttribute("doExpressInstall",false);
var _d=(_9)?_9:window.location;
this.setAttribute("xiRedirectUrl",_d);
this.setAttribute("redirectUrl","");
if(_a){this.setAttribute("redirectUrl",_a);}};
deconcept.SWFObject.prototype={setAttribute:function(_e,_f){
this.attributes[_e]=_f;
},getAttribute:function(_10){
return this.attributes[_10];
},addParam:function(_11,_12){
this.params[_11]=_12;
},getParams:function(){
return this.params;
},addVariable:function(_13,_14){
this.variables[_13]=_14;
},getVariable:function(_15){
return this.variables[_15];
},getVariables:function(){
return this.variables;
},getVariablePairs:function(){
var _16=new Array();
var key;
var _18=this.getVariables();
for(key in _18){
_16.push(key+"="+_18[key]);}
return _16;
},getSWFHTML:function(){
var _19="";
if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");}
_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\"";
_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";
var _1a=this.getParams();
for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}
var _1c=this.getVariablePairs().join("&");
if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}
_19+="/>";
}else{
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}
_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\">";
_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";
var _1d=this.getParams();
for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}
var _1f=this.getVariablePairs().join("&");
if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}
_19+="</object>";}
return _19;
},write:function(_20){
if(this.getAttribute("useExpressInstall")){
var _21=new deconcept.PlayerVersion([6,0,65]);
if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){
this.setAttribute("doExpressInstall",true);
this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));
document.title=document.title.slice(0,47)+" - Flash Player Installation";
this.addVariable("MMdoctitle",document.title);}}
if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){
var n=(typeof _20=="string")?document.getElementById(_20):_20;
n.innerHTML=this.getSWFHTML();
return true;
}else{
if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}
return false;}};
deconcept.SWFObjectUtil.getPlayerVersion=function(_23,_24){
var _25=new deconcept.PlayerVersion([0,0,0]);
if(navigator.plugins&&navigator.mimeTypes.length){
var x=navigator.plugins["Shockwave Flash"];
if(x&&x.description){_25=new deconcept.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}
}else{try{
var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
for(var i=3;axo!=null;i++){
axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
_25=new deconcept.PlayerVersion([i,0,0]);}}
catch(e){}
if(_23&&_25.major>_23.major){return _25;}
if(!_23||((_23.minor!=0||_23.rev!=0)&&_25.major==_23.major)||_25.major!=6||_24){
try{_25=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}
catch(e){}}}
return _25;};
deconcept.PlayerVersion=function(_29){
this.major=parseInt(_29[0])!=null?parseInt(_29[0]):0;
this.minor=parseInt(_29[1])||0;
this.rev=parseInt(_29[2])||0;};
deconcept.PlayerVersion.prototype.versionIsValid=function(fv){
if(this.major<fv.major){return false;}
if(this.major>fv.major){return true;}
if(this.minor<fv.minor){return false;}
if(this.minor>fv.minor){return true;}
if(this.rev<fv.rev){return false;}return true;};
deconcept.util={getRequestParameter:function(_2b){
var q=document.location.search||document.location.hash;
if(q){
var _2d=q.indexOf(_2b+"=");
var _2e=(q.indexOf("&",_2d)>-1)?q.indexOf("&",_2d):q.length;
if(q.length>1&&_2d>-1){
return q.substring(q.indexOf("=",_2d)+1,_2e);
}}return "";}};
if(Array.prototype.push==null){
Array.prototype.push=function(_2f){
this[this.length]=_2f;
return this.length;};}
var getQueryParamValue=deconcept.util.getRequestParameter;
var FlashObject=deconcept.SWFObject; // for backwards compatibility
var SWFObject=deconcept.SWFObject;



 
XMLFlashSlideshow_v3 = function(p)
{
	try{
	if (p.id==undefined){
	var id = 'v3flashslideshow_' + (new Date().getTime()) + '_' + Math.random();
	document.write('<div id="' + id + '"><strong><a href="http://www.adobe.com/go/getflashplayer/">You need to upgrade your Flash Player and enable JavaScript to view this content &raquo;</a></strong></div>');
	}else{var id = p.id};
	var so = new SWFObject(p.swf,id,p.w,p.h,'7','#FFFFFF');
	so.addParam('wmode', 'transparent');
	if (p.redirect&&p.redirect!=''&&p.redirect!='NONE') so.setAttribute('redirectUrl',p.redirect);
	so.addVariable('usePreloader',p.usePreloader);
	so.addVariable('xml',escape(p.xml));
	so.addVariable('preventCache',p.preventCache);
	so.addVariable('disableMultipleXML',p.disableMultipleXML);
	so.addVariable('initXML',p.initXML);
	so.write(id);
	}catch(e){}
}
I have traced it down to this error on microsofts page but I cant figure out what is causing it!
http://support.microsoft.com/default.aspx/kb/927917
 
i just copied the slideshow and everything into a blank document and it works in ie6 and 7.

its obviously a nesting issue.

here is how it is laid into the page.
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>US Joiner LLC- Marine Products, Services, and Interiors</title>
<link href="oneColElsCtrHdr.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="js/lightbox.js"></script>
<link href="css/lightbox.css" rel="stylesheet" type="text/css" media='screen' />
<!-- Do not remove the line below!!!  It is required for the XML Flash Slideshow v3. -->
<script type="text/javascript" src="v3flashslideshow/slideshow.js"></script>

</head>

<body class="oneColElsCtrHdr">

<div id="container">
  <div id="header">
    <img src="image002.png" width="267" height="104" /> 
    <!-- end #header -->
  </div>
  <div id="tabsJ">
  <ul>
    <li><a href="default.htm" title="Home"><span>Home</span></a></li>
    <li><a href="organization.html" title="Organization"><span>Company Profile</span></a></li>
    <li><a href="Current Projects.html" title="Current Projects"><span>Current Projects</span></a></li>
    <li><a href="Products.html" title="Products"><span>Products</span></a></li>
    <li><a href="testingservices.html" title="Testing Services"><span>Testing Services</span></a></li>
    <li><a href="careers.html" title="Employment"><span>Careers</span></a></li>
	<li><a href="contact.html" title="Contact USJ"><span>Contact</span></a></li>
  </ul>
</div>
<br /><br />
<div id='slideshow'>
  <!-- Begin XML Flash Slideshow v3 -->
  <script type="text/javascript">
// <![CDATA[
XMLFlashSlideshow_v3({swf:'v3flashslideshow/slideshow.swf',w:'600',h:'400',redirect:'',usePreloader:'true',xml:'v3flashslideshow/slideshow_data9.xml',preventCache:'true',disableMultipleXML:'false',initXML:'%3C?xml%20version=%221.0%22%20encoding=%22utf-8%22?%3E%3Cslideshow%20version=%223%22%3E%3Cstyles%3E%3CPreloader%20label=%22Loading%20%7BN%7D%2525%22%20iconColor=%22#666666%22%20iconAlpha=%2270%22%20iconWidth=%2250%22%3E%3C/Preloader%3E%3CPreloaderLabel%20font=%22Verdana%22%20size=%2210%22%20color=%22#666666%22%20bold=%22false%22%3E%3C/PreloaderLabel%3E%3CBackground%20backgroundColor=%22#E4E4E4%22%20backgroundAlpha=%22100%22%20bevelColor=%22#FFFFFF%22%20bevelStrength=%2270%22%20borderWidth=%220%22%20borderColor=%22#FF6600%22%3E%3C/Background%3E%3CLoaderAnimation%20type=%22circle%22%20color=%22#FFFFFF%22%20alphaBackground=%2220%22%20alphaInner=%2240%22%20frameWidth=%222%22%20width=%2250%22%20height=%2250%22%3E%3C/LoaderAnimation%3E%3CDataLoader%20useAnimation=%22true%22%20useLabel=%22true%22%20labelPlacement=%22bottom%22%20fadeOutDuration=%22400%22%20textFormat=%22loader_text%22%3E%3C/DataLoader%3E%3C/styles%3E%3Clocalization%3E%3Ctext%20orig=%22Loading%20Data...%22%20local=%22Loading%20Data...%22%3E%3C/text%3E%3C/localization%3E%3Cfonts%3E%3Cfont%20id=%22loader_text%22%20name=%22Pixelade%22%20embed=%22true%22%20size=%2213%22%20color=%22#666666%22%20bold=%22false%22%20selectable=%22false%22%20align=%22left%22%3E%3C/font%3E%3C/fonts%3E%3C/slideshow%3E'});

// ]]>
  </script>
  <!-- End XML Flash Slideshow v3 -->
</div>
 

baultista

Banned
Code:
echo "Does NeoGAF support code tags?  If so, I'm not even going to bother reading the OP until this essential step is taken.";
 
<div id="container">DIV 1 OPEN
<div id="header">DIV 2 OPEN
<img src="image002.png" width="267" height="104" />
<!-- end #header -->
</div>DIV 2 CLOSE
<div id="tabsJ">DIV 3 OPEN
<ul>
<li><a href="default.htm" title="Home"><span>Home</span></a></li>
<li><a href="organization.html" title="Organization"><span>Company Profile</span></a></li>
<li><a href="Current Projects.html" title="Current Projects"><span>Current Projects</span></a></li>
<li><a href="Products.html" title="Products"><span>Products</span></a></li>
<li><a href="testingservices.html" title="Testing Services"><span>Testing Services</span></a></li>
<li><a href="careers.html" title="Employment"><span>Careers</span></a></li>
<li><a href="contact.html" title="Contact USJ"><span>Contact</span></a></li>
</ul>
</div>DIV 3 CLOSE???


Looks like the top outtermost div is not closed
 

wolfmat

Confirmed Asshole
What is actually being rendered? Specifically, up to which point is the site being rendered?
gamergirly said:
Looks like the top outtermost div is not closed
I think the gallery is supposed to end up in "container" and the OP simply let out part of the site (footer etc)
 

wolfmat

Confirmed Asshole
You might want to try adding
Code:
defer=”defer”
to the script declarations of your image gallery stuff. I think they're just loading too early.

Like this:
Code:
<script type="text/javascript" src="js/lightbox.js" defer="defer"></script>
<script type="text/javascript" src="v3flashslideshow/slideshow.js" defer="defer"></script>
After all, you want the gallery functionality after the site's "there", right?

You could also use an EventListener and attachEvent to attach the scripts after the site's been loaded, possibly conditionally for IE6 and IE7 since it seems to work just fine elsewhere.

I'm pretty sure that's the root of evil here.
 
I added the defer to the tags and I didnt get the problem anymore, but the problem I face now is that the slide show just does not work at all.

I might add a conditional for ie 6 and 7 that says dont load the slideshow if you are running it.

Get with the times.
 

wolfmat

Confirmed Asshole
The slideshow only works after the slideshow framework's been loaded, obviously. That's why it makes sense to first load the static site content, then the framework, then the slideshow code.
What happens now is that the slideshow's loaded, but isn't functional and thus probably can't initialize (missing functions, look at your JavaScript error console). Then, the framework's loaded, but not actually used.

Before, the sequence was undefined, so the gallery maybe loaded partially, then functions were missing while it was initializing or whatever (I'm not familiar with your particular gallery).

That's the reason why people usually control the sequence of loading of scripts, for example with attachEvent.

defer="defer" isn't the ultimate solution, obviously (although you could just defer the inline JS code of the gallery as well and see where that takes you).

Either check out how attachEvent is used sensibly and do that or check for support here:
http://www.dwuser.com/flashslideshow/v3/support.php
If you're a paying customer, post in their forums.

Good luck!
 
Status
Not open for further replies.
Top Bottom