Link to home
Start Free TrialLog in
Avatar of rowejd
rowejdFlag for United States of America

asked on

Javascript Unterminated string literal error

Getting an error with firebug: "unterminated string literal".  I know it's something simple...but I'm not seeing it:
var slideshow = '<script type="text/javascript">AC_FL_RunContent( \'codebase\',\'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0\',\'width\',\'350\',\'height\',\'234\',\'title\',\'Fire Sprinkler Images\',\'src\',\'preview\',\'quality\',\'high\',\'pluginspage\',\'http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash\',\'movie\',\'preview\' ); </script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="350" height="234" title="Fire Sprinkler Images"><param name="movie" value="preview.swf" /><param name="quality" value="high" /><embed src="preview.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="350" height="234"></embed></object></noscript>';

Open in new window

Avatar of HonorGod
HonorGod
Flag of United States of America image

wouldn't it be easier to consistently use double quotes?
var slideshow = '<script type="text/javascript">AC_FL_RunContent( "codebase","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0","width","350","height","234","title","Fire Sprinkler Images","src","preview","quality","high","pluginspage","http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash","movie","preview" );</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="350" height="234" title="Fire Sprinkler Images"><param name="movie" value="preview.swf" /><param name="quality" value="high" /><embed src="preview.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="350" height="234"></embed></object></noscript>';

Open in new window

Avatar of rowejd

ASKER

Yes - that's just the auto code generated by Dreamweaver.  Changed it, but still gives me the error.

here's the code in-context:
	function loadflash() {
		var slideshow = '<script type="text/javascript">AC_FL_RunContent( "codebase","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0","width","350","height","234","title","Fire Sprinkler Images","src","preview","quality","high","pluginspage","http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash","movie","preview" );</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="350" height="234" title="Fire Sprinkler Images"><param name="movie" value="preview.swf" /><param name="quality" value="high" /><embed src="preview.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="350" height="234"></embed></object></noscript>';
	    document.getElementById("homeflash").innerHTML = slideshow;		
	}

Open in new window

Avatar of rowejd

ASKER

Sorry meant to do the whole thing...
<script type="text/javascript">
	window.onload = function () { loadflash(); }
	
	function loadflash() {
		var slideshow = '<script type="text/javascript">AC_FL_RunContent( "codebase","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0","width","350","height","234","title","Fire Sprinkler Images","src","preview","quality","high","pluginspage","http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash","movie","preview" );</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="350" height="234" title="Fire Sprinkler Images"><param name="movie" value="preview.swf" /><param name="quality" value="high" /><embed src="preview.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="350" height="234"></embed></object></noscript>';
	    document.getElementById("homeflash").innerHTML = slideshow;		
	}
</script>

Open in new window

Avatar of rowejd

ASKER

Nice profile, by the way.  I'm a seminary student coding my way through school.  My majors were bible & biblical languages -- going for my MDiv now.
Cool.  Good luck on that.

Option #1 - do you get the "Element not found" message?
<script type="text/javascript">
  window.onload = function () { loadflash(); }
        
  function loadflash() {
    var slideshow = '<script type="text/javascript">AC_FL_RunContent( "codebase","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0","width","350","height","234","title","Fire Sprinkler Images","src","preview","quality","high","pluginspage","http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash","movie","preview" );</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="350" height="234" title="Fire Sprinkler Images"><param name="movie" value="preview.swf" /><param name="quality" value="high" /><embed src="preview.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="350" height="234"></embed></object></noscript>';
    var home = document.getElementById( "homeflash" );
    if ( home ) {
      home.innerHTML = slideshow;         
    } else {
      alert( 'Element not found.  id="homeflas"' );
    }
  }
</script>

Open in new window

Option #2
<script type="text/javascript">
  window.onload = function () { 
    AC_FL_RunContent( "codebase","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0","width","350","height","234","title","Fire Sprinkler Images","src","preview","quality","high","pluginspage","http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash","movie","preview" );
  }
</script>
 
<noscript>
  <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="350" height="234" title="Fire Sprinkler Images">
    <param name="movie" value="preview.swf" />
    <param name="quality" value="high" />
      <embed src="preview.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="350" height="234"></embed>
  </object>
</noscript>

Open in new window

Avatar of rowejd

ASKER

Still no dice.  I see part of the javascript show at the top of my page.

Here's where I'm trying to use it.  I'm using the onload function simply because I want the rest of the page to load first and then the flash.

http://dime159.dizinc.com/~firespri/
Interesting, in the top of my FireFox 3, window (i.e., between the tabs, and the main page), I see:

'; var home = document.getElementById( "homeflash" ); if ( home ) { home.innerHTML = slideshow; } else { alert( 'Element not found. id="homeflas"' ); } }

So, presumably you are talking about option #1.  Right?
Avatar of rowejd

ASKER

correct.  I used option 1...but tried 2 as well and it gives me other errors.  I just can't figure out why option 1 wouldn't work though?
ASKER CERTIFIED SOLUTION
Avatar of HonorGod
HonorGod
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of rowejd

ASKER

No errors in the javascript now...but no flash content in the div?
Unfortunately, I don't know anything about Flash, or the function:

AC_FL_RunContent()
Avatar of rowejd

ASKER

Well...if you care to check it out -- here's what it looks like working:

http://clearlyconsulting.org   (temporary testing)

This is without any javascript onload functionality...same exact code, so it shouldn't have anything to do with that right?  Let me know what you think?
Avatar of rowejd

ASKER

Well, you were right about the AC_FL_RunContent() deal -- that's what was messing things up.

I took out the noscript tags and the AC function and just used the object tags and it worked fine.  Thanks for the help!
Avatar of rowejd

ASKER

Thanks so much --- totally forgot to consider the URL slashes needing to be escaped!
Ah, that is excellent news!  I'm glad to have been of some help.

Thanks for the grade and the points.

Good luck, and have a great day.