Toon posts:

navbar vraagje

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
de vordingen met de website schieten al aardig op. nu zijn de knoppen veranderd in een heuse navbar, gemaakt in crystal button. deze is nu echter af, en alles werkt. echter de links achter de knoppen, openen de pagina in een nieuw venster/tab. terwijl in de code duidelijk staat dat de standaard target van de pagina 'iframe' is. als ik de base target verwijder, en de target per hyperlink aangeef opent hij deze ook niet in de iframe.

het stuk html van toepasiing:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<script type="text/javascript" src="swf2007.js"></script>
<base target="iframe"/>
</head>



<script language="javascript">

function calcHeight(source)
{
    if(source=='parent'){
     //find the height of the internal page
     var the_height=document.getElementById('iframe').contentWindow.document.body.scrollHeight;
     //change the height of the iframe
     document.getElementById('iframe').height=the_height;
  }else{
         //find the height of the internal page
     var the_height=parent.document.getElementById('iframe').contentWindow.document.body.scrollHeight;
     //change the height of the iframe
     parent.document.getElementById('iframe').height=the_height;
   }
}

</script>
<body bgcolor="#FFFFFF" style="background-image: url('')">



<div id="container">


<!-- Begin NavBar Code: Crystal Button / NavBar Maker -->
<div id="flashcontent"><a href="overons.asp">Home</a>|<a target="iframe" href="bandleden.asp">Band</a>|<a target="iframe" href="optredens.asp">Agenda</a>|<a target="iframe" href="reportoire.asp">Repertoir</a>|<a target="iframe" href="mediafile.asp">Media</a>|<a target="iframe" href="foto.asp">Foto's</a>|<a target="iframe" href="contact.asp">Contact</a>
</div>
<script type="text/javascript">var so = new SWFObject("test.swf","test","825","40","#E1EAE0"); so.addParam("allowScriptAccess","always"); so.write("flashcontent");</script>
<!-- End NavBar Code: Crystal Button / NavBar Maker -->


hier het Iframe'
code:
1
2
3
4
5
6
7
<div id="mid">
<p>
<iframe src="overons.asp" name="iframe" id="iframe" frameborder="no" width="994px" onload="calcHeight('parent');" allowtransparency target="main">
De browser ondersteunt geen in line frames of is momenteel zodanig geconfigureerd dat in line frames niet kunnen worden weergegeven.
</iframe>
</p>
</div>


het javascript van deze navbar is vrij onduidelijk voor mij. ik kan zelf totaal niet met java script werken.

code:
1
2
3
4
5
6
7
8
/**
 * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
 *
 * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 */
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){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"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();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},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[_16.length]=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");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_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");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_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(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?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(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;


wil je zien hoe het werkt, kijk dan even naar www.selexions.nl/bandwebsite.

iemand help me aub. dan is de pagina ver af.

Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 19:56

MueR

Admin Tweakers Discord

is niet lief

Hier in Firefox werkt ie niet. Als in, ik zie enkel tekstlinks doordat je javascript een error heeft. Maar behalve dat, waarom maak je gebruik van een iframe? Ik vind het een vrij vreemde manier van werken. Eerst laadt er een iframe in, vervolgens resize je dat ding om de hoogte van de content aan te nemen. Gevolg: je site ziet er ruk uit bij korte content in een wat hogere resolutie. Waarom werk je niet gewoon met "normale" html?

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • Cascade
  • Registratie: Augustus 2006
  • Laatst online: 16-09 11:44
Paar dingen:
- dat onderste javascript is niet van de navbar maar van een Shockwave ding (SWFObject).
- enige javascript voor de navbar is dat calcHeight, dat is om het frame dynamisch te resizen. In 1 woord: IEW!?.
- als jouw target attribute in de links klopt met de name van het iframe, hoort het te werken.
- check je code even met een HTML validator, word hier naar van. http://validator.w3.org/c...selexions.nl/bandwebsite/

Ik zou eerst een vrij kale testpagina opzetten, zonder de javascript delen, geen base target maar wel target in de links van de navbar, en de iframe (even) een vaste height geven (en zonder 'px' erachter, ook bij width). En dan ook zorgen dat je HTML valideert.

Belangrijkste, ben ik wel benieuwd naar: waarom heb je voor deze website een iframe met javascript 'auto resize' nodig als het ook prima met losse pagina's zou kunnen?