webForumDet fria alternativet

Ändra länkar med checkbox.

JavaScript

6 svar · 240 visningar · startad av ejick

Medlem sedan mars 2001895 inlägg
Frågan#1

Hej,

jag sitter och funderar på hur man skall bete sig, om det skulle gå, att göra en sida som visar poster. T.ex google.

Om man överst på sidan markerar en checkbox så öppnas länkarna i ett pop-up, annars öppnas de i vanliga fönstret. Finns det en möjlighet att bygga en sådan funktion? :OO

Peace ;)

Medlem sedan dec. 20025 483 inlägg
#2

Hej!

<script type="text/javascript">

function f(obj) {
    var links = document.links,
	iLen  = links.length;

    while (iLen-->0)
	links[iLen].target = (obj.checked) ? "_blank" : "_self";
}

</script>

...

<form>
    <input type="checkbox" onclick="f(this)">
</form>

:)

Medlem sedan mars 2001895 inlägg
#3

Tack så mycket. Det funkar utmärkt :)

Om man nu skulle vilja att man öppnade länken i ett popup istället för i ett vanligt fönster, hur gör man då? Alltså byter _blank mot window.open??

Medlem sedan dec. 20025 483 inlägg
#4
<script type="text/javascript">

function f(bool) {
    var links = document.links,
	iLen  = links.length;

    while (iLen-->0)
	links[iLen].onclick = function(e) {
	    e = e || window.event;

	    if (typeof e.preventDefault != "undefined" && bool) {
		window.open( this.href );
		e.preventDefault();
	    }

	    else if (typeof window.event != "undefined" && bool) {
		window.open( this.href );
		e.returnValue = false;
	    }
	}
}

</script>

...

<form>
    <input type="checkbox" onclick="f(this.checked)">
</form>

:)

Medlem sedan sep. 20021 655 inlägg
#5

... och byt ut

window.open( "foo.html" );

mot

window.open( this.href );

om du vill öppna den aktuella länken i nytt fönster.

Medlem sedan dec. 20025 483 inlägg
#6

Ja, givetvis. Tack för påpekandet!

:)

Medlem sedan mars 2001895 inlägg
#7

Tack så jättemycket!

wF är bäst :)

256 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)