abonnement Unibet Coolblue Bitvavo
  maandag 13 oktober 2008 @ 19:35:15 #1
136730 PiRANiA
All thinking men are atheists.
pi_62358769


De (voorlopige) OP van de [Javascript] voor dummies reeks.
Hier kan je alle vragen stellen over Javascript en alles wat er mee te maken heeft.

Heb je een probleem, post dan ook even de code waar het probleem zit Zo kunnen we je beter proberen te helpen.

Vorige delen:
#1 - [Javascript] voor dummies - Deel 1
#2 - [Javascript] voor dummies - Deel 2
#3 - [Javascript] voor dummies - deel 3
#4 - [Javascript] voor dummies - deel 4
#5 - [Javascript] voor dummies (deel 6)
#6 - [Javascript] voor dummies (deel 6)
#7 - [Javascript] voor dummies (deel 7)

Handige links:
Quircksmode Javascript
Javascript Cheat Sheet
Mis je een link? Geef even een gil in het topic

Tutorials:
W3Schools Javascript
W3Schools AJAX

Laatste posts uit het vorige topic:
quote:
Op maandag 13 oktober 2008 18:48 schreef Flaccid het volgende:
Moet ie niet dicht en een nieuwe?



Deze OP: http://wiki.fok.nl/index.php/OP/Javascript
  maandag 13 oktober 2008 @ 19:40:07 #2
74548 Jo0Lz
Lick the box!
pi_62358904
Naar DEV en centraal.

.
Yes we can! | I didn't fail, it's just postponed success.
pi_62358920
Mijne was verkeerd, typo. En tvp. en vraag:

ik heb voor google maps dit stukje script om een marker aan te maken

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
   <script type="text/javascript">
          function createMarker(point,html) {
      var marker = new GMarker(point);
                 GEvent.addListener(marker,"click", function() {
        map.openInfoWindowHtml(point,html);
      });
     return marker;
   }

      
//<![CDATA[
var map = new GMap2(document.getElementById("map"));
document.getElementById('map').style.backgroundColor = 'white';
var mapType = new GmapUploaderMapType(map, "http://mt.gmapuploader.com/tiles/fjn2OwJjRh", "jpg", 6);
map.setCenter(new GLatLng(0,0), 5, mapType);
map.addControl(new GLargeMapControl());
map.enableContinuousZoom();


    GDownloadUrl("data.xml", function(data, responseCode) {
    var xml = GXml.parse(data);
    var markers = xml.documentElement.getElementsByTagName("marker");
    for (var i = 0; i < markers.length; i++) {
      var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                              parseFloat(markers[i].getAttribute("lng")));
            
          var marker = createMarker(point,markers[i].getAttribute("content"));
          map.addOverlay(marker);
    }
          }
        );

//]]>

</script>


En dit in mijn data.xml

1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?>
<markers>
    <marker lat="4.19677734375" lng="1.1865234375" content="test"/>
    <marker lat="-1.40625" lng="-8.96484375" content="plas"/>
</markers>


Dat werkt allemaal, ik kan nu netjes markers aanmaken. Maar in de content kan ik geen html opmaak gebruiken. Het gaat dus niet om google maps maar om het xml en javascript gedeelte. Weet iemand hoe ik toch html kan gebruiken, het liefst een klein div/table erin kunnen pleuren met een titel en een fotootje.

Voorbeeld op www.jc-c.nl/mapfull.htm
  maandag 13 oktober 2008 @ 19:41:25 #4
136730 PiRANiA
All thinking men are atheists.
pi_62358943
quote:
Op maandag 13 oktober 2008 19:40 schreef Jo0Lz het volgende:
Naar DEV en centraal.

:*.
dankje O+

Wie kan me helpen? Wat komt er uit deze code?
1
2
3
4
5
<script>
if(1<2){
document.write("tvp");
}
</script>
pi_62359084
quote:
Op maandag 13 oktober 2008 19:41 schreef PiRANiA het volgende:

[..]

dankje

Wie kan me helpen? Wat komt er uit deze code?
[ code verwijderd ]
tvp?
  maandag 13 oktober 2008 @ 19:50:14 #6
136730 PiRANiA
All thinking men are atheists.
pi_62359202
quote:
Op maandag 13 oktober 2008 19:46 schreef Flaccid het volgende:

[..]

tvp?
zou kunnen
  maandag 13 oktober 2008 @ 20:28:52 #7
74548 Jo0Lz
Lick the box!
pi_62360392
quote:
Op maandag 13 oktober 2008 19:46 schreef Flaccid het volgende:

[..]

tvp?
Maar dan zonder ?.
quote:
Op maandag 13 oktober 2008 19:50 schreef PiRANiA het volgende:

[..]

zou kunnen
1 is ALTIJD kleiner dan 2. Dus ja, er komt "tvp" uit.
Yes we can! | I didn't fail, it's just postponed success.
pi_62360542
quote:
Op maandag 13 oktober 2008 20:28 schreef Jo0Lz het volgende:

[..]


1 is ALTIJD kleiner dan 2. Dus ja, er komt "tvp" uit.
Ook in IE6?
pi_62362492
Een los vraagje: niet moeilijk maar het moet te doen zijn.

Uit een bepaald form krijg ik deze data:
(-3.515625, -24.2578125)

Nu wil ik deze met een button press in 2 fields zetten, de linker waarde in de ene en de rechter waarde in de andere. dus zegmaar (a,b) word [a] en [b]. Is het moelijk ? hoe moet het?
pi_62363241
document.getElementById("field1").value=a;
pi_62364896
quote:
Op maandag 13 oktober 2008 22:02 schreef mcDavid het volgende:
document.getElementById("field1").value=a;
Nou ik krijg de value echt als (-3.515625, -24.2578125). Dus niet als a en b in een textbox. Dus,
pi_62375101
oh je krijgt een string in de vorm van (-3.515625, -24.2578125) ?

In dat geval zul je met de slice() functie je string in stukken moeten hakken. Je kunt bijv. met search() de positie van de haakjes en de komma achterhalen, en die posities in je slice functie gebruiken.
pi_62491686
Beste mensen,

Ik ben op het moment bezig met een website en heb in Photoshop een menu gemaakt, dat geopend met fireworks en daar gesliced en een pop up menu aan gezet..

Nu heb ik dat geexporteerd en dan krijg ik een aantal bestanden..
In de preview van fireworks werkt alles naar behoren.


Maar hoe krijg ik nou dat menu in mijn html site, heb van alles geprobeerd maar krijg niks voor elkaar..

Als het menu opgeslagen is heb ik de volgende bestanden:
8 x gif file
1 x JScript script file
1 x CSS file
1 x html file
8 x MNO bestanden in een gecreerde _notes map

Iemand die weet wat ik waar moet zetten?
pi_62526394
http://www.dezinerfolio.c(...)vascript-accordions/

Ik ben hier bezig met een simpel accordion, alles werkt maar wil bij een hover de divs uitklappen. Hoe kan ik dat voor elkaar krjigen? Hier de minieme javascript:
http://www.spiderspider.n(...)ion/accordian-src.js

Accordion zelf:
http://www.spiderspider.n(...)accordion/Basic.html
pi_62532748
quote:
Op maandag 20 oktober 2008 @ 13:07 schreef emokid het volgende:
http://www.dezinerfolio.c(...)vascript-accordions/

Ik ben hier bezig met een simpel accordion, alles werkt maar wil bij een hover de divs uitklappen. Hoe kan ik dat voor elkaar krjigen? Hier de minieme javascript:
http://www.spiderspider.n(...)ion/accordian-src.js

Accordion zelf:
http://www.spiderspider.n(...)accordion/Basic.html
search and replace op "onclick" naar "onmouseover"?
quote:
Op zaterdag 18 oktober 2008 @ 20:56 schreef wc-eend het volgende:
Beste mensen,

Ik ben op het moment bezig met een website en heb in Photoshop een menu gemaakt, dat geopend met fireworks en daar gesliced en een pop up menu aan gezet..

Nu heb ik dat geexporteerd en dan krijg ik een aantal bestanden..
In de preview van fireworks werkt alles naar behoren.


Maar hoe krijg ik nou dat menu in mijn html site, heb van alles geprobeerd maar krijg niks voor elkaar..

Als het menu opgeslagen is heb ik de volgende bestanden:
8 x gif file
1 x JScript script file
1 x CSS file
1 x html file
8 x MNO bestanden in een gecreerde _notes map

Iemand die weet wat ik waar moet zetten?
het heeft niet zoveel met javascript te maken, meer met algemeen html, maargoed:

Al die bestanden moet je natuurlijk uploaden.
De html-code zet je in de pagina op de plek waar je het menu wilt hebben
de css bestand include je in de <head> sectie met de volgende regel: <link rel="stylesheet" href="map/bestandsnaam.css" type="text/css" />
Het js-bestand moet denk ik ook in de head sectie. met de volgende regel:<script type="text/javascript" src="map/bestandsnaam.js"></script>

Als dat niet werkt, moet die laatste regel waarschijnlijk ergens onder de html van het menu...

de plaatjes moeten natuurlijk ook op de goeie locatie staan... wat die "MNO" bestanden zijn weet ik niet... is dat niet iets fotoshop-specifieks?
pi_62534515
Zo simpel, bedankt mcDavid.
pi_62537045
Werkt het echt? Tof!
pi_62540521
quote:
Op maandag 20 oktober 2008 17:14 schreef mcDavid het volgende:

[..]

search and replace op "onclick" naar "onmouseover"?
[..]

het heeft niet zoveel met javascript te maken, meer met algemeen html, maargoed:

Al die bestanden moet je natuurlijk uploaden.
De html-code zet je in de pagina op de plek waar je het menu wilt hebben
de css bestand include je in de <head> sectie met de volgende regel: <link rel="stylesheet" href="map/bestandsnaam.css" type="text/css" />
Het js-bestand moet denk ik ook in de head sectie. met de volgende regel:<script type="text/javascript" src="map/bestandsnaam.js"></script>

Als dat niet werkt, moet die laatste regel waarschijnlijk ergens onder de html van het menu...

de plaatjes moeten natuurlijk ook op de goeie locatie staan... wat die "MNO" bestanden zijn weet ik niet... is dat niet iets fotoshop-specifieks?
Thanks
pi_62687110
Hoi.
Vraagje!
Van een plaatje pas ik de src aan met javascript (document.getelementbyid...etc). Dat plaatje moet laden, en wordt dan geplaatst. Kan ik op DAT laden al een eventlistener zetten, of moet ik iets als een loader oid aanmaken?
pi_62707974
Kan gewoon met onload.
pi_62729920
Da's wel heel simpel.
Tnx. Ik kan weer verder met m'n JS oefeningen .
pi_62777753
Ik zoek zoiets als het volgende, maar helaas werkt dit script alleen in Internet Explorer (niet in Chrome of Firefox iig). Weet iemand hoe het makkelijk in php kan of een betere javascript 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
37
<html><head><title>Voorbeeldbrief</title>
<script type="text/javascript">
// _w : ID
// _h : 'h' (=hide(verbergen)), of 's' (=show(tonen))
function wisselen(_w,_h) {
if (document.all) { 
if (_h=='s') eval("document.all."+_w+".style.visibility='visible';");
if (_h=='h') eval("document.all."+_w+".style.visibility='hidden';");
} else { 
if (_h=='s') eval("document.layers['"+_w+"'].visibility='show';");
if (_h=='h') eval("document.layers['"+_w+"'].visibility='hide';");
}
}
</script>
</head><body>
<!-- Invoegen van het script gebeurt door toevoegen van onClick: -->
<form>
Tonen <input name="r1" type="radio" checked value="" onClick="wisselen('deel1','s')">
Verbergen <input name="r1" type="radio" value="" onClick="wisselen('deel1','h')">
</form> 
<form>
Jaar <input name="t1" type="text">
<label>
<input type="submit" name="b1" id="b1" value="Invoeren">
</label>
</form> 

<!-- Het formuliergedeelte dat je wil tonen/verbergen plaats je tussen <span>-tags: -->
<span id="deel1" style="visibility:visible;position:relative;top:0;left:0">
<form>
Hier een te verbergen of te tonen tekst.
</form>
</span>
<span id="deel2">
<!-- en hier wil ik graag de tekst van t1 hebben -->
</span>
</body></html>


In een ander topic hoorde ik al:
"gewoon document.getElementById gebruiken ipv 'layers' of 'all' shizle. Weet niet waarom ze dat verzonnen hebt maar is nergens voor nodig in deze vorm."
en
"Ter aanvulling: en die eval() mag ook wel overal weg."

Ik ben nog een beginner op dit gebied en vroeg me af of iemand me hiermee kan helpen. Het liefst heb ik de uitvoer dan in een soort formulierveld. Net als bij Google maps dus eigenlijk als je een embed code opvraagt:
voorbeeld

Helaas werken bij google de pro's waar ik nog niet veel van snap :P
pi_62779288
1
2
3
4
function wisselen(_w,_h) {
   if (_h == s) { document.getElementById(_w).disabled=true; }
   else { document.getElementById(_w).disabled=false; }
}



Dit is genoeg.
In plaats van .disabled=true kun je natuurlijk ook .style.visibility="hidden" of .style.display="none" gebruiken, net wat je wilt.

en lees hier verder: www.w3schools.com
vooral de stukken over DOM en Javascript zijn interessant hiervoor

[ Bericht 6% gewijzigd door mcDavid op 29-10-2008 15:26:10 (aangepast n.a.v. post superrembo) ]
pi_62782929
Daar zitten nog fouten (foutjes) in. En 't is wat omslachtig.
Het lijtk me handiger om 2 functies te maken:
1
2
3
4
5
6
7
8
9
function show(id)
{
   document.getElementById(id).style.display = '';
}

function hide(id)
{
   document.getElementById(id).style.display = 'none';
}


Die kan je daarna gebruiken als onclick="show('deel1')". Je moet ook nog even style="visibility:visible;" vervangen door style="display:none".
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_62783236
quote:
Op woensdag 29 oktober 2008 14:51 schreef SuperRembo het volgende:
Daar zitten nog fouten (foutjes) in. En 't is wat omslachtig.
Het lijtk me handiger om 2 functies te maken:
[ code verwijderd ]

Die kan je daarna gebruiken als onclick="show('deel1')". Je moet ook nog even style="visibility:visible;" vervangen door style="display:none".
Hey, dankje! 't Werkt nu. Nu alleen nog even uitzoeken hoe ik een invoerveld ergens kan invoegen (zoals je merkt ben ik een aardige beginner ) maar dat zal wel op die w3schools te vinden zijn..
pi_62783989
quote:
Op woensdag 29 oktober 2008 @ 14:51 schreef SuperRembo het volgende:
Daar zitten nog fouten (foutjes) in. En 't is wat omslachtig.
Het lijtk me handiger om 2 functies te maken:
[ code verwijderd ]

Die kan je daarna gebruiken als onclick="show('deel1')". Je moet ook nog even style="visibility:visible;" vervangen door style="display:none".
godver je hebt gelijk stom!
maarreuh; visibility en display zijn twee verschillende properties. Dus ligt aan de toepassing welke het handigst is. Ik denk voor de toepassing van TS dat disabled beter geschikt is.
pi_62786916
quote:
Op woensdag 29 oktober 2008 15:25 schreef mcDavid het volgende:
[..]
maarreuh; visibility en display zijn twee verschillende properties. Dus ligt aan de toepassing welke het handigst is. Ik denk voor de toepassing van TS dat disabled beter geschikt is.
Dat is inderdaad verschillend. Meestal (naar mijn ervaring) wil je niet dat het verborgen element nog ruimte in neemt. Dan heb je dus display:none nodig en niet visibility:hidden. Alleen form elementen ondersteunen de enabled property (niet allemaal), en dan blijft het element ook zichtbaar. Het is de vraag of dat de bedoeling is.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_62787354
quote:
Op woensdag 29 oktober 2008 @ 17:02 schreef SuperRembo het volgende:

[..]

Dat is inderdaad verschillend. Meestal (naar mijn ervaring) wil je niet dat het verborgen element nog ruimte in neemt. Dan heb je dus display:none nodig en niet visibility:hidden. Alleen form elementen ondersteunen de enabled property (niet allemaal), en dan blijft het element ook zichtbaar. Het is de vraag of dat de bedoeling is.
als het inderdaad een form betreft, is dat waarschijnlijk wel de bedoeling. Zie bijv. ook zijn voorbeeldlink van google maps waar dat gebeurt.

Voordeel van visibiliyt ipv display is wel dat er geen verschuivingen optreden in de pagina als je de elementen weer zichtbaar maakt.
pi_62790028
Ik ga het in een formulier tekstblok proberen te zetten, zodat de bezoeker het makkelijk kan kopieren. Ik denk dat ik dan inderdaad de mogelijkheid gebruik die geen ruimte in zal nemen.
pi_62804857
Ik heb ook weer eens een vraag, en wil eens weten hoe jullie dit oplossen.

Stel ik heb de volgende lap HTML code
1
2
3
4
5
6
7
8
9
<input type="checkbox" name="extra[opties_test1]" value="test1"> test 1<br />
<input type="checkbox" name="extra[opties_test2]" value="test2"> test 2<br />
<input type="checkbox" name="extra[opties_test3]" value="test3"> test 3<br />

<input type="radio" name="extra[opties_woei_1]" value="1">1<br />
<input type="radio" name="extra[opties_woei_2]" value="2">2<br />
<input type="radio" name="extra[opties_woei_3]" value="3">3<br />

<input type="text" name="extra[optie_info]" value="Hier je omschrijving"><br />


Hoe kun je middels javascript alle opties van extra uitlezen en in een tekst string zetten? de uitkomst wil ik zo ongv hebben
1
2
3
opties_test1
opties_woei2
optie_info = 'tekst';


Kan iemand mij in de juiste richting duwen?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62808768
1
2
3
4
5
6
7
8
var p = document.getElementById("[formid]").getElementsByTagName(*)
var tekststring = ""

for (var i=0; i < p.length; i++){
   if(p[i].name.match("extra")) {
      tekststring += p[i].value + "\n" ;
   }
}



volgens mij zou zoiets moeten werken. weet niet zeker of p[i].name geldig is. En er zijn vast ook legio andere mogelijkheden.
pi_62812052
Super! ik ga het morgen even checken, is er ook een mogelijkheid om binnen javascript te checken of een bepaald element van een checkbox, radio oid afkomstig is?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62813148
p[i].tagName denk ik?

www.w3schools.com
pi_62814330
quote:
Op woensdag 29 oktober 2008 14:51 schreef SuperRembo het volgende:
Daar zitten nog fouten (foutjes) in. En 't is wat omslachtig.
Het lijtk me handiger om 2 functies te maken:
[ code verwijderd ]

Die kan je daarna gebruiken als onclick="show('deel1')". Je moet ook nog even style="visibility:visible;" vervangen door style="display:none".
Ik gebruik nu het scriptje van SuperRembo en wil daarmee graag het volgende: meerdere radiobuttons voor meerdere stukken tekst. Ik wil graag zoiets maken dat het show-script aanroept als een radio button geselecteerd is en het hide-script als het uit staat. Zoiets als het volgende dus (alleen je ziet'm vast al aankomen: dit werkt nog niet)

1<input name="radio1" type="radio" checked value="" />
als knop
dan iets als
1<script type="...">if(radio1.value){ show('tekst1') } else { hide('tekst1')}</script>
pi_62814550
if (radio1.checked=true)

oh en met xhtml mag je geen shorttags gebruiken, dus in de xhtml checked="checked" gebruiken!
pi_62815854
Tnx mcDavid
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62819674
quote:
Op donderdag 30 oktober 2008 13:05 schreef mcDavid het volgende:
[ code verwijderd ]
volgens mij zou zoiets moeten werken. weet niet zeker of p[i].name geldig is. En er zijn vast ook legio andere mogelijkheden.
getElementsByTagName() is niet handig, want dan krijg je alle elementen in plaats van alleen de form elementen.
1
2
3
4
5
6
var info = '';
var fields = document.forms[0].elements;
for (var i = ; i < fields.length; ++i)
{
   if (fields[i].name.match(/^extra/)) info += fields[i].value + '\n';
}
quote:
Op donderdag 30 oktober 2008 14:56 schreef Chandler het volgende:
Super! ik ga het morgen even checken, is er ook een mogelijkheid om binnen javascript te checken of een bepaald element van een checkbox, radio oid afkomstig is?
Dan moet je op tagName en type controleren:
1if (el.tagName == 'input' && el.type == 'radio') alert('Dit is een radio button');
quote:
Op donderdag 30 oktober 2008 16:17 schreef mcDavid het volgende:
if (radio1.checked=true)
if (radio1.checked)
dus :P
quote:
oh en met xhtml mag je geen shorttags gebruiken, dus in de xhtml checked="checked" gebruiken!
Ach, het zal toch niet om echt xhtml gaan. Dan zal alleen checked ook wel werken ;)
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_62820180
quote:
Op donderdag 30 oktober 2008 @ 19:45 schreef SuperRembo het volgende:

[..]

getElementsByTagName() is niet handig, want dan krijg je alle elementen in plaats van alleen de form elementen.
[ code verwijderd ]

[..]

Dan moet je op tagName en type controleren:
[ code verwijderd ]

[..]

if (radio1.checked)
dus
[..]

Ach, het zal toch niet om echt xhtml gaan. Dan zal alleen checked ook wel werken
Hey het moet wel spannend blijven heh

document.forms[0] is idd wel een ietsje nettere oplossing dan document.getElementById("[idvanhetform]")

En als het wel om 'echte' xhtml gaat zal het ook wel werken. Alleen gaat de W3C validator er dan wel van vloeken.
pi_62822644
quote:
Op maandag 27 oktober 2008 01:16 schreef mcDavid het volgende:
Kan gewoon met onload.
Ik ga hier nog even op verder.<img onload...> is pas HTML5.0. 4.01 en XHTML1.0 vreten het niet. Weet je daar een oplossing voor?
Zelf de DTD aanpassen vind ik trouwens geen oplossing. Ik doel meer op een JS oplossing oid.
pi_62822855
In IE6, 7 en firefox 3 werkt het iig gewoon.
pi_62822893
Sorry, ik vergat erbij te zetten dat de W3C validator het niet tof vindt. Er móet dus een andere oplossing zijn, denk ik! .
pi_62822987
De uitslag van W3C validator is belangrijker dan de goede werking van je site?
pi_62823027
Nee, natuurlijk niet. Maar om met m'n eerste stapjes javascript al gelijk met dingen te beginnen die de W3C validator niet vreet lijkt me gewoon gek?
pi_62823353
Ah, een setInterval en de alt-tag misbruiken en tegelijkertijd goed gebruiken lijkt me een keurige oplossing
pi_62823530
Ownee, dat werkt niet, duh _

Ik leer het wel, wedden?
pi_62825844
sja als je per sé geen onload op een plaatje wilt gebruiken, kun je document.images[] doorlopen met een timer, en bij ieder plaatje controleren of je bijv. de breedte op kunt vragen. Zo ja dan is'ie geladen.

Maar dat zou echt een gigantische kutoplossing zijn t.o.v. onload. En eentje die veel resources vraagt ook.

Ik zit te denken of het op een andere manier handig zou kunnen. Werkt onreadystatechange ook op plaatjes?
pi_62827588
quote:
Op donderdag 30 oktober 2008 19:45 schreef SuperRembo het volgende:
[..]
if (radio1.checked)
dus
[..]
Ah, zat ik dus al aardig in de buurt. Thnx!
pi_62902795
Ik heb een vraagje m.b.t JSON.

Heb gezocht en niet gevonden, met PHP maak ik nu een simpele JSON array aan en wil deze middels XMLHTTP laden in een website.

Het script wat ik nu gebruik laat met een alert de opgehaalde content zien:

Voorbeeld:
1{"maten_arr": [102,130,80,32,47,79,0,121.5,46]}


Deze array wil ik graag gebruiken in javascript, maar heb werkelijk waar geen flauw idee hoe ik deze array kan benutten? het gaat mij alleen om de values en niets meer... anyone tips?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62903281
Kijk eens op http://json.org/
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_62903676
Ik heb er gekeken maar kon niet echt een voorbeeld vinden van bewerking tussen php en javascript zelf... maar ik ben dan ook slecht in zoeken
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62903910
Je wil een json string parsen in javascript. (Het doet er niet toe dat die string door php is gegenereerd) Daar staan een paar voorbeelden van op de site.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_62905573
Hmm, naja google hielp mij iig wel..

ik heb eval("var json = " + str); geprobeerd en dat werkte!!!
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62905941
Dat werkt wel, maar eval() heeft wel een risico dat er code uitgevoerd kan worden als iemand er in slaagt om de json string aan te passen.
http://www.json.org/json2.js heeft dat risico niet.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_62907114
Het wordt gebruikt na login, en alleen maar om bepaalde zaken in velden te zetten. Ik zal het script eens doornemen.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62915758
quote:
Op maandag 3 november 2008 @ 13:15 schreef SuperRembo het volgende:
Dat werkt wel, maar eval() heeft wel een risico dat er code uitgevoerd kan worden als iemand er in slaagt om de json string aan te passen.
http://www.json.org/json2.js heeft dat risico niet.
Iedere malloot kan met greasemonkey je javascriptjes aanpassen. Dus je gebruikt javascript sowieso niet voor dingen die enig risico met zich meebrengen.

Dan maakt het ook niet uit hoe je met strings om gaat.
pi_62917097
quote:
Op maandag 3 november 2008 19:34 schreef mcDavid het volgende:

[..]
Iedere malloot kan met greasemonkey je javascriptjes aanpassen. Dus je gebruikt javascript sowieso niet voor dingen die enig risico met zich meebrengen.

Dan maakt het ook niet uit hoe je met strings om gaat.
Cross-site scripting enzo... Het probleem is niet dat ik scriptjes op mijn pc kan aanpassen zodat er dingen anders werken dan de websitebouwen bedoeld heeft. Wat wel een probleem is is dat de ene persoon de scripting bij een ander kan aanpassen. Okay, 't risico is waarschijnlijk niet vreselijk groot...

Als je 't dan met eva wil doen, 't kan iets netter:
1var data = eval('(' + jsonData + ')');
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  dinsdag 4 november 2008 @ 13:41:29 #57
134533 donroyco
dus niet Donroyco
pi_62934241
Ik zoek een werkend Javascript waarmee je afbeeldingen kunt laten roteren met een fade-in en fade-out. Heb al gezocht, maar de meeste scripts via Google werken niet met fade-ins en fade-outs, of de sites zijn niet bereikbaar.. Alvast bedankt
Op maandag 29 september 2008 11:45 schreef HostiMeister het volgende:
Dat is zeg maar de Nederlandse taal op een vuige keukentafel voorover buigen en hem dan zonder glijmiddel anaal verkrachten. :'(
pi_62936038
quote:
Op dinsdag 4 november 2008 13:41 schreef donroyco het volgende:
Ik zoek een werkend Javascript waarmee je afbeeldingen kunt laten roteren met een fade-in en fade-out. Heb al gezocht, maar de meeste scripts via Google werken niet met fade-ins en fade-outs, of de sites zijn niet bereikbaar.. Alvast bedankt
Hier dan?
  dinsdag 4 november 2008 @ 14:55:00 #59
134533 donroyco
dus niet Donroyco
pi_62936056
quote:
Op dinsdag 4 november 2008 14:54 schreef killko het volgende:

[..]

Hier dan?
Thanks, daar kan ik zeker wat mee
Op maandag 29 september 2008 11:45 schreef HostiMeister het volgende:
Dat is zeg maar de Nederlandse taal op een vuige keukentafel voorover buigen en hem dan zonder glijmiddel anaal verkrachten. :'(
pi_62961935
Idd veldmuis, heerlijke opties
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_62964004
Weet iemand trouwens hoe ik in JS het volgende kan doen

ALS iets < 4 OF iets > 16 dan...

want OR blijkt niet te werken

-edit-

Ik moet || gebruiken

[ Bericht 22% gewijzigd door Chandler op 05-11-2008 11:22:54 ]
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_63012371
Hoi,

ik wil graag onderling afhankelijke dropdowmenu' s maken.
PHP levert een array met opties. Gelijk het aantal keys/opties wordt een overeenkomstig aantal dropdownmenu's weergegeven.

Ik wil het gebruiken voor een planningsmodule voor een band. Liedjes in volgorde zetten voor een setlijst.
Stel ik heb 10 liedjes. 10 arraykeys met value
PHP/javascript drukt een tabel af met nummers 1 tot en met 10.
Achter ieder nummer komt een dropdown met liedjes.
Selecteer ik bij nummer 1 een liedje, dan dient deze te verdwijnen uit de overige 9 dropdownmenu's. etc.

Ik wil graag weten of deze constructie ergens als codevoorbeeld te vinden is. (Zo ja, waar...?)
Ook zou ik graag willen weten hoe men deze functie noemt. Dan kan ik beter zoeken op het internet. Nu kan ik niets vinden.
Als ik codevoorbeelden heb kom ik er denk ik wel uit. Echt moeilijk is het niet volgens mij. Ik heb echter veel te weinig kaas van javascript gegeten om dit van 0 af op te bouwen.

Iemand aanwijzingen?
pi_63014044
Lijkt me een leuk scriptje om met javascript te beginnen!
op www.w3schools.com vind je een hele hoop tutorials, staat vast wel wat nuttigs tussen!

Ik zou denk ik 2 arrays maken. 1 array voorgedefineerd met alle mogelijke opties.
Array 2 laat je aanmaken in een functie die je aanroept met onchange, en bestaat uit de values van alle selectboxes.

vervolgens vergelijk je de array en geef je de selectboxes die nog geen waarde hebben, de options mee die niet in array 2 voorkomen

Het makkelijkste is denk ik getElementsByTagName('select') als 2e array gebruiken...
pi_63016909
:Is het niet handiger om met 2 lijsten te werken: 1 lijst met beschikbare liedjes, 1 lijst met de selectie. 2 knopjes voor toevoegn en verwijderen, 2 knopjes om te sorteren. Zoals het aanpassen van de toolbar in Explorer bijvoorbeeld werkt.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_63069337
Vraagje,

stel ik wil een divje (400x400) centreren in mijn browser, echter ook als ik naar beneden scroll wil ik dat het divje in het midden van het scherm blijft. Hoe moet ik dit oplossen? ik weet hoe ik een div moet centreren met javascript maar niet als er gescrolled is ?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_63069712
Nooit te beroerd om mijn eigen vraag te beanwtoorden ;)
Ik heb het probleem ander sopgelost, heel anders. Ik wilde een array sorteren. Mijn constructie kon wel, maar was niet echt doodsimpel.
Een listbox met een up/down button wel.
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="content-type">
  <title></title>
<script language="JavaScript" src="http://www.mattkruse.com/javascript/selectbox/compact/selectbox.js"></script>
<script type="text/javascript">
function selectAll(selectBox,selectAll) {
   // have we been passed an ID
   if (typeof selectBox == "string") {
      selectBox = document.getElementById(selectBox);
   }
   // is the select box a multiple select box?
   if (selectBox.type == "select-multiple") {
      for (var i = 0; i < selectBox.options.length; i++) {
         selectBox.options[i].selected = selectAll;
      }
   }
}

var el = function (id) { return document.getElementById(id); }

function go(my)
 {
  var ind = el('select').selectedIndex;
  var L = el('select').options.length;
  el('select').selectedIndex = (my.value=="up" && ind > 0)? ind -1 my.value=="down" && ind < L-1)? ind +1 : (my.value=="to top")? 0 : (my.value=="to bottom")? L-1 : ind;
  var txt = el('select')[el('select').selectedIndex].innerHTML;
  el('select')[el('select').selectedIndex].innerHTML = el('select')[ind].innerHTML;
  el('select')[ind].innerHTML = txt;
 }
</script>
</head>
<body>
<?php
if(isset($_POST))
 {
   print_r($_POST);
 }
?>
<form action="test.php" method="POST">
   <SELECT NAME="updownlist[]" id="updownlist"  SIZE="12" MULTIPLE>
      <OPTION VALUE="Option 1"> Option 1
      <OPTION VALUE="Option 2"> Option 2
      <OPTION VALUE="Option 3"> Option 3
      <OPTION VALUE="Option 4"> Option 4
      <OPTION VALUE="Option 5"> Option 5
      <OPTION VALUE="Option 6"> Option 6
      <OPTION VALUE="Option 7"> Option 7
      <OPTION VALUE="Option 8"> Option 8
      <OPTION VALUE="Option 9"> Option 9
      <OPTION VALUE="Option 10"> Option 10
      <OPTION VALUE="Option 11"> Option 11
      <OPTION VALUE="Option 12"> Option 12
   </SELECT>
   <INPUT TYPE="button" VALUE=" Up " onClick="moveOptionUp(this.form['updownlist'])">
   <INPUT TYPE="button" VALUE="Down" onClick="moveOptionDown(this.form['updownlist'])">
        <br /><input type="submit" name="submit" value="submit" onclick="selectAll('updownlist',true)">
</form>

<br>
</body>
</html>
pi_63090372
quote:
Op zondag 9 november 2008 09:33 schreef Chandler het volgende:
Vraagje,

stel ik wil een divje (400x400) centreren in mijn browser, echter ook als ik naar beneden scroll wil ik dat het divje in het midden van het scherm blijft. Hoe moet ik dit oplossen? ik weet hoe ik een div moet centreren met javascript maar niet als er gescrolled is ?
Ik zou kiezen voor een css-oplossing, met position: fixed;
Maar 'k weet niet in hoeverre dat cross-browser werkt (IE6). Hoewel, je krijgt het geheel dan niet midden in het scherm, maar wel altijd op dezeflde plek in het scherm.
pi_63151518
Weet iemand trouwens een scriptje waarmee ik een div precies in het midden van het scherm kan zetten? had 1tje gevonden maar helaas deze werkt niet naar behoren en laat de div niet in het midden zien.

Ook is het mijzelf niet gelukt (moet gebruik maken van margin-left, top: etc)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_63154576
quote:
Op woensdag 12 november 2008 @ 10:04 schreef Chandler het volgende:
Weet iemand trouwens een scriptje waarmee ik een div precies in het midden van het scherm kan zetten? had 1tje gevonden maar helaas deze werkt niet naar behoren en laat de div niet in het midden zien.

Ook is het mijzelf niet gelukt (moet gebruik maken van margin-left, top: etc)
breedte is niet zo lastig lijkt me

hoogte:

1
2
3
4
5
6
7
var div = document.getElementById("blaat")
if (window.innerHeight) {var hoogte = window.innerHeight;} // voor firefox
else if (document.body.clientHeight){var hoogte = document.body.clientHeight;} // voor IE
div.height=200; // het is helaas noodzakelijk de hoogte in het DOM te defineren anders pakt'ie m niet
if (((hoogte-div.height)/2) > 0){hoogte=(hoogte-div.height)/2;}
else {hoogte = 0;} // anders verdwijnt je div als je schermhoogte lager dan de div is.
div.style.top=hoogte+"px";



Werkt iig in IE en Fx. Voor IE moet je wel html {height:100%} in je css zetten.
pi_63157662
Ok!, tnx!
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_63219425
Hallo,

De volgende functie(hieronder) moet het mogelijk maken om door op een knop te klikken, tekst te wijzigen, kleur wijzen en een andere functie aan mn button geven. Dit werkt in FF maar niet in IE, daar wordt de btn.onclick gelijk weer uitgevoerd en krijg ik een memory fout. Je kan geen setAttribute gebruiken voor IE, dit leek mij de enige mogelijkheid.. wat doe ik fout?

AJAX requests worden pas later toegevoegd uiteraard, het gaat alleen ff om dit stukje 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
37
38
39
40
41
42
function setOff(id, btn)
{
   var spanElement = document.getElementById(id)
   var btn = document.getElementById(btn);
   spanElement.innerHTML = "Uitgeschakeld."
   //IE
   if(navigator.appName == "Microsoft Internet Explorer")
   {
      spanElement.style.color = "red";
      btn.value = "Inschakelen";
      btn.onclick = setOn('berichtverkeer', 'berichtbtn');

   }
   //Overige browsers
   else
   {
      spanElement.setAttribute("style","color:red;");
      btn.setAttribute('onclick',"setOn('berichtverkeer','berichtbtn')");
      btn.value = "Inschakelen";
   }
   
}

function setOn(object, btn)
{
   var spanElement = document.getElementById(object)
   var btn = document.getElementById(btn);
   
   if(navigator.appName == "Microsoft Internet Explorer")
   {
      spanElement.style.color = "green";
      btn.value = "Uitschakelen";
      btn.onclick = setOff('berichtverkeer', 'berichtbtn');
   }
   else
   {
      spanElement.setAttribute("style","color:green;");
      btn.setAttribute('onclick',"setOff('berichtverkeer','berichtbtn')");
      btn.value = "Uitschakelen";
   }
   spanElement.innerHTML = "Ingeschakeld."
}


1
2
3
Berichtverkeer is <span id="berichtverkeer" style="color:green;">Ingeschakeld.</span>
                  <br/>
                  <input type="button" id="berichtbtn" onclick="setOff('berichtverkeer', 'berichtbtn')" value="Uitschakelen">
pi_63220057
Die functies die je voor IE gebruikt zouden het gewoon in alle brouwsers moeten doen hoor.
En volgens mij moet je de functie die je op onclick wilt zetten quoten. Dus:

btn.onclick='setOn(\'berichtverkeer\', \'berichtbtn\')'
pi_63220241
quote:
Op vrijdag 14 november 2008 13:52 schreef mcDavid het volgende:
Die functies die je voor IE gebruikt zouden het gewoon in alle brouwsers moeten doen hoor.
En volgens mij moet je de functie die je op onclick wilt zetten quoten. Dus:

btn.onclick='setOn('berichtverkeer', 'berichtbtn')'
Door het te quoten werkt het helemaal niet meer.. maar ik vind het vreemd dat de onclick ook gelijk wordt uitegevoerd terwijl ik m alleen set.
pi_63220854
Werkt dit?
1object.onclick= function(){ setOn(whatever); }


bron
pi_63221037
quote:
Op vrijdag 14 november 2008 14:23 schreef mcDavid het volgende:
Werkt dit?
[ code verwijderd ]

bron
btn.onclick= function(){ setOn('berichtverkeer', 'berichtbtn'); } werkt!

Ik dank je hartelijk
pi_63243422
ik heb het volgende "probleem":

ik heb een divje (<div id="mainContent">)
en daarin staan diverse <span> elementen..

ik wil d.m.v. 1 onclick event alle span elementen verbergen en vervolgens 1 van die span's tonen (afhankelijk van het argument dat wordt mee gegeven)...
dit moet echter ook goed gaan wanneer alles al verborgen is (bij openen van de pagina)
de span's hebben als id:
vol1_C1
vol1_C2
vol1_C3
vol2_C1
vol2_C2
vol2_C3

etc...

hoe kan ik dat doen?
ik heb het volgende geprobeerd:

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
function hideallids()

var allspans = mainContent.getElementsByTagName("span");
   for (var i=0;i<allspans.length;i++)
   {
      for (var j=1;j<4;j++)
      {

         document.getElementById("vol" + i + "_C" + j).style.display = 'none';
         document.getElementById("vol" + i + "_C" + j).style.visibility = 'hidden';
      }
   }    
}

function showhide2(id)
{
   if(document.getElementById(id).style.display == 'none' || document.getElementById(id).style.display == '')
   {
      hideallids();
      document.getElementById(id).style.visibility = 'visible';
      document.getElementById(id).style.display = 'block';
   }
   else
   {
      hideallids();
      document.getElementById(id).style.visibility = 'hidden';
      document.getElementById(id).style.display = 'none';
   }
}


maar dat deed het niet (zowel FF als IE)
pi_63246955
Heb je mainContent wel gedefineerd als document.getElementById("mainContent")?

verder is volgens mij die 2e for loop dubbelop. Je kunt gewoon getElementsByTagName("span")[i].style.display='none' gebruiken.

En bovendien is visibility = hidden en display = none ook dubbelop.
Visibility zorgt ervoor dat een element onzichtbaar wordt, maar wel blijft staan;
display = none zorgt ervoor dat een element echt wordt 'weggehaald' (zodat'ie ook geen ruimte meer inneemt).
En tenslotte is een span van zichzelf display="inline" dus het lijkt me verstandig om inline te gebruiken ipv block (tenzij je er een goede reden voor hebt)

-edit-
overigens zijn je huidige for-loops sowieso verkeerd ingericht. Probeer maar eens voor jezelf na te gaan hoe er precies door de loops heengewandeld wordt (beetje lastig om het helemaal uit te leggen). Als je bovenstaande methode zou gebruiken zou het volgens mij wel goed gaan.

[ Bericht 18% gewijzigd door mcDavid op 15-11-2008 17:34:58 ]
pi_63250775
quote:
Op zaterdag 15 november 2008 17:28 schreef mcDavid het volgende:
Heb je mainContent wel gedefineerd als document.getElementById("mainContent")?
-knip-
dat was inderdaad mijn probleem
en die 2de loop is niet dubbelop..

ik heb namelijk in de span 2 variabele nummers:
vol1_C1
het eerste cijfer geeft aan om welk "object" het gaat
en de 2de geeft aan om welk deel het van het "object" gaat
beide zijn variabel, echter heb ik de 2de een vast aantal gegeven... (omdat meer niet nodig is momenteel..)
en aangezien ik de gegevens los van elkaar wil benaderen heb ik deze oplossing bedacht, misschien niet de beste maar het functioneert precies zoals ik wil

ik kan overigens niet de span's aflopen om die per gevonden item te verbergen...
in de spans zitten nog wat spans (puur omdat het a) werkt en b) ik niks anders kon verzinnen )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function hideallids()

var element = document.getElementById("mainContent");
var allspans = element.getElementsByTagName("span");
   for (var i=1;i<allspans.length/3;i++)
   {
      for (var j=1;j<4;j++)
      {
         var idname = "vol" + i + "_C" + j;
         document.getElementById(idname).style.display = 'none';
         document.getElementById(idname).style.visibility = 'hidden';
      }
   }    
}
quote:
En bovendien is visibility = hidden en display = none ook dubbelop.
Visibility zorgt ervoor dat een element onzichtbaar wordt, maar wel blijft staan;
display = none zorgt ervoor dat een element echt wordt 'weggehaald' (zodat'ie ook geen ruimte meer inneemt).
En tenslotte is een span van zichzelf display="inline" dus het lijkt me verstandig om inline te gebruiken ipv block (tenzij je er een goede reden voor hebt)

-edit-
overigens zijn je huidige for-loops sowieso verkeerd ingericht. Probeer maar eens voor jezelf na te gaan hoe er precies door de loops heengewandeld wordt (beetje lastig om het helemaal uit te leggen). Als je bovenstaande methode zou gebruiken zou het volgens mij wel goed gaan.
mja die visibility/display is dan idd wel dubbelop... die corrigieer ik nog wel..

en hoe die gedisplayed wordt kan mij niet uitmaken als het werkt (tis niet iets dat aan w3c moet voldoen, het moet goed functioneren.. en dat doet het in zowel IE als FF)
pi_63250930
ah, zo met allspans.length/3 klopt'ie al beter ja. Loopt je script er iig niet op vast. Maar als je functie er idd zo uitziet pakt'ie ze toch allemaal dus kun je net zo goed mijn idee gebruiken.

En echt: display='none' en visibility = 'hidden' is dubbelop!
pi_63250976
quote:
Op zaterdag 15 november 2008 20:19 schreef mcDavid het volgende:
ah, zo met allspans.length/3 klopt'ie al beter ja. Loopt je script er iig niet op vast. Maar als je functie er idd zo uitziet pakt'ie ze toch allemaal dus kun je net zo goed mijn idee gebruiken.

En echt: display='none' en visibility = 'hidden' is dubbelop!
hij pakt nu alleen de span's met een bepaalde ID, de rest laat hij lekker met rust (die IN de span met naam zitten)
pi_63251034
Ah ok. En ja het is ook niet 'fout' om ze display:block te maken, maar het kan in sommige gevallen zijn dat het er dan anders uitziet als origineel. Ligt een beetje aan je verdere opmaak.
pi_63287415
Ik wil iets maken waarin ik onderin een iframe heb met thumbnails, en als je daarop klikt komt er een groot plaatje in het midden. Schets:


Onderin dus een balk met thumbs, en als je aan de rand zit scroll je naar rechts of naar links. Op een klik op een thumb word er een nieuwe foto geladen, met een overgang (fadeinout). Net boven de balk komt een kleine textbalk, waar ik wat tekst wil op pleuren, gelinked per foto. Ik wil het helemaal zelf maken, is een goede oefening. Is dit haalbaar?
Tips?
pi_63288122
Is prima haalbaar. Maar waarom wil je het met een iframe doen? maakt het alleen maar ingewikkeld denk ik.

Je kunt bijv. die grote afbeelding een ID geven, en dan de source wijzigen als je op een thumbnail klikt.
pi_63288482
quote:
Op maandag 17 november 2008 14:17 schreef mcDavid het volgende:
Is prima haalbaar. Maar waarom wil je het met een iframe doen? maakt het alleen maar ingewikkeld denk ik.

Je kunt bijv. die grote afbeelding een ID geven, en dan de source wijzigen als je op een thumbnail klikt.
Ik wil de onderste thumbbar als iframe doen. Of gewoon een ID met overflow scroll? Ik heb niks kunnen vinden btw over het scrollen met je muis aan de rand, kan iemand iets vinden? Ik wil eigenlijk aan de zijkanten nog iets doen met 2 knopjes [<<] img img img img [> >] en dat je scrollt als je op die pijltjes hovert.
pi_63288611
quote:
Op maandag 17 november 2008 @ 14:31 schreef Flaccid het volgende:

[..]

Ik wil de onderste thumbbar als iframe doen. Of gewoon een ID met overflow scroll? Ik heb niks kunnen vinden btw over het scrollen met je muis aan de rand, kan iemand iets vinden? Ik wil eigenlijk aan de zijkanten nog iets doen met 2 knopjes [<<] img img img img [> >] en dat je scrollt als je op die pijltjes hovert.
Ik zou gewoon een div maken met overflow scroll idd.

Verder ja met javascript kun je wel scrollen, dus moet te doen zijn met een hover...
zie bijv. http://www.w3schools.com/(...)_dom_window_scrollby
pi_63318533
Ik probeer de scrollpositie van een iframe [ ] op te halen.

Voor firefox werkt het volgende prima:
1window.frames['page'].window.pageYOffset



IE heeft haar eigen alternatieve methode, maar die blijft maar 0 teruggeven.
1window.frames['page'].document.body.scrollTop


Blijkbaar herkent'ie het wel, anders zou het script vastlopen of undefined teruggeven lijkt me..

Heeft iemand een idee?
pi_63346995
Schop.
pi_63363571
quote:
Hmm hoop interessant leesvoer!

Het blijkt idd alleen te werken met IE in quirks mode.

Maarja daar word je ook niet bepaald vrolijk van
pi_63404596
Ik kom niet uit dat scrollen van een iframe (of id). Ik wil dat met 2 hovers kunnen doen.

1
2
<a href="#" onmouseover="javascript:scroll_iframe('test',10,'v');">Test</a>
<iframe src="test.htm" height="250px" widht="100px" id="test" name="test" ></iframe>


Dit werkt alleen niet.

[ Bericht 74% gewijzigd door Flaccid op 21-11-2008 14:49:47 ]
pi_63405321
quote:
Op vrijdag 21 november 2008 @ 14:25 schreef Flaccid het volgende:
Ik kom niet uit dat scrollen van een iframe (of id). Ik wil dat met 2 hovers kunnen doen.
maak 3 functies, functie 1: timer, functie 2: scrollBy() functie 3: kill timer

onmouseover doe je functie 1,
onmouseout doe je functie 3.

de timer in functie 1 laat je bijv. iedere 100 ms functie 2 uitvoeren
functie 2 laat je iedere keer bijv. 3 pixels scrollen.
pi_63405515
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_63406517
quote:
Op vrijdag 21 november 2008 14:57 schreef Chandler het volgende:
http://www.java2s.com/Cod(...)ollwhenmouseover.htm is dit niet te gebruiken?
Ik denk het wel, maar ik wil eerst kijken of ik het zelf kan.
quote:
Op vrijdag 21 november 2008 14:50 schreef mcDavid het volgende:

[..]

maak 3 functies, functie 1: timer, functie 2: scrollBy() functie 3: kill timer

onmouseover doe je functie 1,
onmouseout doe je functie 3.

de timer in functie 1 laat je bijv. iedere 100 ms functie 2 uitvoeren
functie 2 laat je iedere keer bijv. 3 pixels scrollen.
Even scrollby ding opzoeken
pi_63412782
Ik kom erachter dat dat scrollby niet voor een iframe is. Kan ik niet gewoon een marquee gebruiken?
pi_63459076
Hallo mensen,

Ik ben al een tijdje aan het klooien met het volgende: Ik probeer drie keer een cross fade effect te creëren met JS, dit lukt wel voor één array plaatjes. Maar de volgende twee willen niet lukken. Ik heb zitten kijken maar het komt omdat het script onder andere alleen de CSS id pakt en niet de class. Omdat getElementById bestaat, maar niet voor class...

Het huidige resultaat is hier te zien. De bedoeling is dat de eerste twee arrays hetzelfde als de derde array.

Mijn JS:
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);

var d=document, imgs = new Array(), zInterval = null, current=0, pause=false;

function so_init()
{
   if(!d.getElementById || !d.createElement)return;

   css = d.createElement("link");
   css.setAttribute("href","./css/default.css");
   css.setAttribute("rel","stylesheet");
   css.setAttribute("type","text/css");
   d.getElementsByTagName("head")[0].appendChild(css);

   imgs = d.getElementById("fade-one").getElementsByTagName("img");
   for(i=1;i<imgs.length;i++) imgs[i].xOpacity = 0;
   imgs[0].style.display = "block";
   imgs[0].xOpacity = .99;
   
   setTimeout(so_xfade,1000);
}

function so_xfade()
{
   cOpacity = imgs[current].xOpacity;
   nIndex = imgs[current+1]?current+1:0;

   nOpacity = imgs[nIndex].xOpacity;
   
   cOpacity-=.05; 
   nOpacity+=.05;
   
   imgs[nIndex].style.display = "block";
   imgs[current].xOpacity = cOpacity;
   imgs[nIndex].xOpacity = nOpacity;
   
   setOpacity(imgs[current]); 
   setOpacity(imgs[nIndex]);
   
   if(cOpacity<=0)
   {
      imgs[current].style.display = "none";
      current = nIndex;
      setTimeout(so_xfade,1000);
   } 
   else 
   {
      setTimeout(so_xfade,50);
   }
   
   function setOpacity(obj) 
   {
      if(obj.xOpacity>.99) 
      {
         obj.xOpacity = .99;
         return;
      }
      obj.style.opacity = obj.xOpacity;
      obj.style.MozOpacity = obj.xOpacity;
      obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
   }
}


En mijn HTML:
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
37
38
<table id="home">
   <tr>
      <td>
         <div id="fade-one">
            <img src="image/1105969.jpg" alt="" />
            <img src="image/1189632.jpg" alt="" />
            <img src="image/1421495.jpg" alt="" />
            <img src="image/1901696.jpg" alt="" />
            <img src="image/2416070.jpg" alt="" />
            <img src="image/3253313.jpg" alt="" />
            <img src="image/3763733.jpg" alt="" />
         </div>
      </td>
      <td class="seperator"></td>
      <td>
         <div id="fade-two">
            <img src="image/3827955.jpg" alt="" />
            <img src="image/3990747.jpg" alt="" />
            <img src="image/4294622.jpg" alt="" />
            <img src="image/5387336.jpg" alt="" />
            <img src="image/5458789.jpg" alt="" />
            <img src="image/5641430.jpg" alt="" />
            <img src="image/5685370.jpg" alt="" />
         </div>
      </td>
      <td class="seperator"></td>
      <td>
         <div id="fade-three">
            <img src="image/5814188.jpg" alt="" />
            <img src="image/5825672.jpg" alt="" />
            <img src="image/5933698.jpg" alt="" />
            <img src="image/6592410.jpg" alt="" />
            <img src="image/7008812.jpg" alt="" />
            <img src="image/7116237.jpg" alt="" />
         </div>
      </td>
   </tr>
</table>


Iemand die weet hoe ik voor alle drie de arrays werkend kan krijgen?
Aan dit bericht kunnen geen rechten worden ontleend.
pi_63461815
1
2
3
4
5
6
   imgs = d.getElementById("fade-one").getElementsByTagName("img");
   for(i=1;i<imgs.length;i++) imgs[i].xOpacity = 0;
   imgs[0].style.display = "block";
   imgs[0].xOpacity = .99;
   
   setTimeout(so_xfade,1000);


dat stukje 3x uitvoeren, en imgs niet global declareren maar meegeven in de functie.
pi_63465644
quote:
Op zondag 23 november 2008 21:51 schreef mcDavid het volgende:

[ code verwijderd ]

dat stukje 3x uitvoeren, en imgs niet global declareren maar meegeven in de functie.
Ik ben echt een totale noob op het gebied van JS, zou je het misschien meer in jip-en-janneke taal kunnen uitleggen ? Ik zou echt niet weten hoe ik jou tips zou moeten verwerken...
Aan dit bericht kunnen geen rechten worden ontleend.
pi_63568027
Ik zit met het volgende, voor mijn statistieken script heb ik het volgende stukje javascript geschreven:

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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
function gfxS_browserPlugins()
{
    str = "";
    var done = new Array();

    for (var i = 0; i < navigator.plugins.length; i++) 
    {
        if (!done[navigator.plugins[i].name])
        {
            done[navigator.plugins[i].name] = 1;
            str += escape(navigator.plugins[i].name) + ",";
        }
    }

    return str;
}

function gfxS_jsVersion()
{
    js_ver = '0';
    ar = new Array("1.0", "1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "2.0");

    for (x = 0; x < ar.length; x++)
    {
        document.write('<' + 'script language="Javascript' + ar[x] + '">');
        document.write('js_ver = "' + ar[x] + '";');
        document.write('<' + '/script>');
    }

    return js_ver;
}

function gfxS_checkCookie()
{
    // create a fake cookie
    document.cookie = "testcookie=true";

    if (document.cookie.indexOf('testcookie') == -1)
    {
        return 0;
    }
    else
    {
        return 1;
    }
}

var count_res              = new Array();
count_res['language']      = navigator.language? navigator.language : navigator.userLanguage;
count_res['colordepth']    = (navigator.appName.indexOf("Microsoft") > -1) ? screen.colorDepth : screen.pixelDepth; 
count_res['screenwidth']   = screen.width;
count_res['screenheight']  = screen.height;
count_res['referer']       = (document.referrer && document.referrer != "" && document.referer != 'undefined' && document.referrer != null) ? escape(document.referrer) : '';
count_res['is_java']       = (navigator.javaEnabled() == 1) ? 1 : 0;
count_res['is_font']       = (window.screen.fontSmoothingEnabled == true) ? 1 : 0;
count_res['is_cookie']     = gfxS_checkCookie();
count_res['js_version']    = gfxS_jsVersion();
count_res['plugins']       = gfxS_browserPlugins();

// do code

var str = '';
var d = '';
for (var d in count_res)
{
    if (count_res[d] != '')
    {
        str += "&" + d + "=" + count_res[d];
    }
}

document.write('<img src="http://www.mijndomein.nl/count/<?php echo $_GET['id']; ?>.png?cache=false' + str + '" ALT="statistics"');


Als ik dit gebruik op een domein met de volgende externe librarys

<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>

dan krijg ik een fout

1http://www.mijndomein.nl/count/7zR13Li2.png?cache=false&lastIndexOf=function(item, i) {  i = isNaNi ? this.length : (i < 0 ? this.length + i : i) + 1;  var n = this.slice(0, i).reverse().indexOf(item);  return (n < 0) ? n : i - n - 1;}&indexOf=function(item, i) {  i || (i = 0);  var length = this.length;  if (i < 0) i = length + i;  for (; i < length; i++)    if (this[i] === item) return i;  return -1;}&toJSON=function() {    var results = [];    this.each(function(object) {      var value = Object.toJSON(object);      if (!Object.isUndefined(value)) results.push(value);    });    return '[' + results.join(', ') + ']';  }&clone=function() {    return [].concat(this);  }&intersect=function(array) {    return this.uniq().findAll(function(item) {      return array.detect(function(value) { return item === value });    });  }&uniq=function(sorted) {    return this.inject([], function(array, value, index) {      if (0 == index || (sorted ? array.last() != value : !array.include(value)))        array.push(value);      return array;    });  }&reduce=function() {    return this.length > 1 ? this : this[0];  }&without=function() {    var values = $A(arguments);    return this.select(function(value) {      return !values.include(value);    });  }&flatten=function() {    return this.inject([], function(array, value) {      return array.concat(Object.isArray(value) ?        value.flatten() : [value]);    });  }&compact=function() {    return this.select(function(value) {      return value != null;    });  }&last=function() {    return this[this.length - 1];  }&first=function() {    return this[0];  }&clear=function() {    this.length = 0;    return this;  }&_each=function(iterator) {    for (var i = 0, length = this.length; i < length; i++)      iterator(this[i]);  }&_reverse=function reverse() {    [native code]}&some=function(iterator, context) {    iterator = iterator ? iterator.bind(context) : Prototype.K;    var result = false;    this.each(function(value, index) {      if (result = !!iterator(value, index))        throw $break;    });    return result;  }&every=function(iterator, context) {    iterator = iterator ? iterator.bind(context) : Prototype.K;    var result = true;    this.each(function(value, index) {      result = result && !!iterator(value, index);      if (!result) throw $break;    });    return result;  }&entries=function() {    return this.map();  }&member=function(object) {    if (Object.isFunction(this.indexOf))      if (this.indexOf(object) != -1) return true;    var found = false;    this.each(function(value) {      if (value == object) {        found = true;        throw $break;      }    });    return found;  }&filter=function(iterator, context) {    iterator = iterator.bind(context);    var results = [];    this.each(function(value, index) {      if (iterator(value, index))        results.push(value);    });    return results;  }&select=function(iterator, context) {    iterator = iterator.bind(context);    var results = [];    this.each(function(value, index) {      if (iterator(value, index))        results.push(value);    });    return results;  }&find=function(iterator, context) {    iterator = iterator.bind(context);    var result;    this.each(function(value, index) {      if (iterator(value, index)) {        result = value;        throw $break;      }    });    return result;  }&map=function(iterator, context) {    iterator = iterator ? iterator.bind(context) : Prototype.K;    var results = [];    this.each(function(value, index) {      results.push(iterator(value, index));    });    return results;  }&inspect=function() {    return '[' + this.map(Object.inspect).join(', ') + ']';  }&size=function() {    return this.length;  }&zip=function() {    var iterator = Prototype.K, args = $A(arguments);    if (Object.isFunction(args.last()))      iterator = args.pop();    var collections = [this].concat(args).map($A);    return this.map(function(value, index) {      return ite


terwijl ik eingelijk dit terug zou moeten krijgen

1http://www.mijndomein.nl/count/7zR13Li2.png?cache=false&language=nl&colordepth=32&screenwidth=1280&screenheight=1024&is_cookie=1&js_version=1.8&plugins=Mozilla%20Default%20Plug-in,Shockwave%20for%20Director,Shockwave%20Flash,Google%20Update,RealPlayer%28tm%29%20G2%20LiveConnect-Enabled%20Plug-In%20%2832-bit%29%20,RealPlayer%20Version%20Plugin,Yahoo%21%20activeX%20Plug-in%20Bridge,Microsoft%AE%20DRM,Windows%20Media%20Player%20Plug-in%20Dynamic%20Link%20Library,


Wat gaat er fout? :D kan iemand mij hiermee helpen?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_63599162
Niemand?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')