[js] link openen in nieuw venster

Pagina: 1
Acties:

  • Galois
  • Registratie: Oktober 2002
  • Laatst online: 10:46

Galois

1811 - 1832

Topicstarter
Per abuis heb ik dit net in P&W gepost. De mod heeft het niet gemoved naar het juiste forum maar het topic gesloten omdat hij vond dat het erg basic is dit probleem.
Ik ben sindsdien (ruim 3 kwartier) aan het zoeken op andere fora, nieuwsgroepen en google, maar zonder succes. Dus wil ik het toch weer proberen hier. Ik hoop dat niemand het mij kwalijk neemt.

Het probleem:

Ik heb een stuk geëdit in javascript voor op mijn homepage. Het is een dropdown menu, waar als je erop gaat staan hij automatisch opengaat en je op een link daarin kunt klikken. Het werkt perfect met als enig probleem nog dat de links in het actieve venster geopend worden en niet in een nieuw venster zoals ik zou willen.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<script language="JavaScript" src="navcond.js"></script>
<script language="JavaScript">

var myNavBar1 = new NavBar(0);
var dhtmlMenu;

dhtmlMenu = new NavBarMenu(100, 0);
dhtmlMenu.addItem(new NavBarMenuItem("Links", ""));
dhtmlMenu.addItem(new NavBarMenuItem("Link 
1", "http://www.willekeurigelink.com"));
myNavBar1.addMenu(dhtmlMenu);

enz, enz, enz...


In dit voorbeeldje wil ik dus dat Link 1 geopend wordt in een nieuw venster. Uiteraard heb ik target=_blank al geprobeerd, maar dat zorgt er alleen maar voor dat hij www.willekeurigelink.com%target=_blank gaat openen in datzelfde venster.
Hoe krijg ik het voor elkaar dat de link in een nieuw venster opent?
Voor alle duidelijkheid, dit staat allemaal in <head>. Er is dus niets in de body opgenomen (dus dingen als open.window werken niet geloof ik).

[ Voor 0% gewijzigd door Galois op 20-10-2002 14:07 . Reden: lay aangepast ]

1 - Mathematics is the language of nature. 2 - Everything around us can be represented and understood through numbers. 3 - If you graph the numbers of any system, patterns emerge.


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 12:19

crisp

Devver

Pixelated

Ik zou eens in je navcond.js gaan kijken...

Intentionally left blank


  • Galois
  • Registratie: Oktober 2002
  • Laatst online: 10:46

Galois

1811 - 1832

Topicstarter
Daar staat deze function:
code:
1
function NavBarMenuItem(text,link){this.text=text;this.link=link;}


Geen idee wat ik daar aan toe zou moeten voegen om 'm open te laten gaan in een nieuw venster. Mijn javascript kennis gaat niet zo ver...

1 - Mathematics is the language of nature. 2 - Everything around us can be represented and understood through numbers. 3 - If you graph the numbers of any system, patterns emerge.


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 12:19

crisp

Devver

Pixelated

Galois schreef op 20 oktober 2002 @ 14:19:
Daar staat deze function:
code:
1
function NavBarMenuItem(text,link){this.text=text;this.link=link;}


Geen idee wat ik daar aan toe zou moeten voegen om 'm open te laten gaan in een nieuw venster. Mijn javascript kennis gaat niet zo ver...
kom, er staat vast wel meer in...

Intentionally left blank


Verwijderd

Zou ik maken:
function NavBarMenuItem(text,link, target){this.text=text;this.link=link;this.target=target;}

En in de functie die de uiteindelijke HTML uitvoert moet je een toevoeging maken. iets als:
document.write("<a href='" + OBJECT.link + "' target='" + OBJECT.target + "'>" + OBJECT.text + "</a>");

  • Galois
  • Registratie: Oktober 2002
  • Laatst online: 10:46

Galois

1811 - 1832

Topicstarter
Tuurlijk staat daar meer in, maar deze funtion zorgt er toch voor dat die link geopend wordt? Ik neem aan dat je niet de hele navcond.js wilt zien toch (150 regels)?

1 - Mathematics is the language of nature. 2 - Everything around us can be represented and understood through numbers. 3 - If you graph the numbers of any system, patterns emerge.


Verwijderd

Die functie zorgt er alleen maar voor dat een object gevuld wordt met data, verder niets.

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 12:19

crisp

Devver

Pixelated

Galois schreef op 20 oktober 2002 @ 14:24:
Tuurlijk staat daar meer in, maar deze funtion zorgt er toch voor dat die link geopend wordt? Ik neem aan dat je niet de hele navcond.js wilt zien toch (150 regels)?
Post dan ff een linkje naar waar je dat script vandaan hebt, of zet het ff online.

Intentionally left blank


  • Galois
  • Registratie: Oktober 2002
  • Laatst online: 10:46

Galois

1811 - 1832

Topicstarter
crisp schreef op 20 oktober 2002 @ 14:27:
[...]

Post dan ff een linkje naar waar je dat script vandaan hebt, of zet het ff online.
hier staat ie

1 - Mathematics is the language of nature. 2 - Everything around us can be represented and understood through numbers. 3 - If you graph the numbers of any system, patterns emerge.


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 12:19

crisp

Devver

Pixelated

woei, obfuscated....
probeer eens als link hetvolgende erin te zetten:
code:
1
javascript:window.open('http://www.willekeurigelink.com')

Intentionally left blank


  • Galois
  • Registratie: Oktober 2002
  • Laatst online: 10:46

Galois

1811 - 1832

Topicstarter
Pffff... het werkt.
K*tzooi, ik had dat al geprobeerd, maar had een spatie teveel... Ik dacht niet dat dat het probleem zou zijn.

BEDANKT!

1 - Mathematics is the language of nature. 2 - Everything around us can be represented and understood through numbers. 3 - If you graph the numbers of any system, patterns emerge.


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Galois schreef op 20 oktober 2002 @ 14:45:
Pffff... het werkt.
K*tzooi, ik had dat al geprobeerd, maar had een spatie teveel... Ik dacht niet dat dat het probleem zou zijn.

BEDANKT!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function navBarItemClick(e){
    if(this.link=="")return true;
    if(this.menuLayer!=null) {
        hideLayer(this.menuLayer);
    }
    if(this.parentHighLayer!=null) {
        hideLayer(this.parentHighLayer);
    }
    hideLayer(this.highLayer);
    if(this.link.indexOf("javascript:")==0)
        eval(this.link);
    else 
        window.location.href=this.link;
return true;
}


Toch zou het moeten werken....

if(this.link.indexOf("javascript:")==0)
eval(this.link);

[edit]
la ma....

Programmer - an organism that turns coffee into software.

Pagina: 1