dit topic gaat over javascript, een scripting taal voor webpaginas, wat totaal iets anders is als Java, wat een programmeertaal is. Zoek even verder en je zult een centraal Java topic vindenquote:Op woensdag 7 juni 2006 14:14 schreef joupee het volgende:
[..]
hmm.. dus echt een dummie he, ik snap niet eens wat je hiermee bedoelt![]()
oke.. toch bedanktquote:Op woensdag 7 juni 2006 14:19 schreef ralfie het volgende:
[..]
dit topic gaat over javascript, een scripting taal voor webpaginas, wat totaal iets anders is als Java, wat een programmeertaal is. Zoek even verder en je zult een centraal Java topic vinden
Iemand die mijn probleem snapt en kan helpen?quote:Op woensdag 7 juni 2006 06:26 schreef fokME2 het volgende:
Ik wil graag een divje kunnen draggen, op het moment kan ik de div 'vastpakken' en gaat slepen.
Als je met het divje gaat slepen, dan blijft je muis altijd in het midden van de div. Ik wil echter dat de muis op de plaats blijft waar ik de div 'vastpakte'.
html:
[ code verwijderd ]
javascript:
[ code verwijderd ]
Ik heb het al geprobeerd door ipv de helft van de width van de div, de 'xin' van de x af te trekken. Dit klopt echter niet, want:
x - parsint(div.style.left) = x - xin
xin = parseint(div.style.left), dus dan wordt er niet meer 'gedragged'.
Iemand een oplossing voor mijn probleem?![]()
quote:Op woensdag 7 juni 2006 15:06 schreef fokME2 het volgende:
[..]
Iemand die mijn probleem snapt en kan helpen?![]()
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 | <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="generator" content="Microsoft FrontPage 4.0"> <title></title> <script type="text/javascript" src="drag.js"></script> </head> <body> <div id="drag" onmousedown="startdragging(event)" onmouseup="stopdragging()" style="position: absolute; left: 100px; top: 100px; height: 200px; width: 200px; background-color: #fff000;"></div> <script type="text/javascript"> function stopdragging() { document.onmousemove=null; } var xrel=0; var yrel=0; function startdragging(e) { var div=document.getElementById('drag'); var x=0; var y=0; if (document.all) { x = event.clientX + document.body.scrollLeft; y = event.clientY + document.body.scrollTop; } else { x = e.pageX; y = e.pageY; } xrel=x-parseInt(div.style.left); yrel=y-parseInt(div.style.top); document.onmousemove=drag; } function drag(e) { var div = document.getElementById('drag'); if (document.all) { x = event.clientX + document.body.scrollLeft; y = event.clientY + document.body.scrollTop; } else { x = e.pageX; y = e.pageY; } div.style.left=x-xrel; div.style.top=y-yrel; } </script> </body> </html> |
Wat is je probleem daarmee? Eventueel voeg je het later dmv. javascript toe aan het elementquote:Op woensdag 7 juni 2006 16:09 schreef fokME2 het volgende:
Ik wilde juist vermijden om met onmousedown en onmouseup in de html te werken, maar volgens mij zit er niet veel anders op?
cache. daar kun je omheen door een random waarde mee te sturenquote:Op woensdag 7 juni 2006 15:27 schreef mschol het volgende:
ik zit nou al even te klooien met ajax (wat mij opzich wel een leuke techniek lijkt)
en ik wilde eigenlijk weten of mensen hier nog goede (duidelijke) nederlandse tutorials hierover weten..
en weet iemand wat ik kan doen tegen het feit dat wanneer ik op een link klik in IE dat de eerste ker hij wel netjes de pagina veranderd maar de 2de klik op een link doet ie niks?
hmmm oke ga ik even naar kijken...quote:Op woensdag 7 juni 2006 17:59 schreef DionysuZ het volgende:
[..]
cache. daar kun je omheen door een random waarde mee te sturen(of een no-cache header, maar dat heb ik nog niet geprobeerd)
1 |
ik heb nl. met AJAX een chat ingebouwd in een site. Alles werkte mooi in firefox maar ik kreeg klachten dat het in IE niet werkte. Toen ik keek zag ik dat de betreffende div wel opnieuw ingevuld werd met een nieuwe innerHTML, maar dat de code die erin kwam hetzelfde bleef. Een random (idd met math.random()) toegevoegd en alles werkte mooi.quote:Op woensdag 7 juni 2006 18:08 schreef mschol het volgende:
[..]
hmmm oke ga ik even naar kijken...
--edit--
[ code verwijderd ]
ik heb het stukje code met Math.random() toegevoegd maar helaas helpt dit niet..
een no-cache header kan ik nog even naar kijken..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | { try { xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { } xmlhttp.onreadystatechange = function() { if ((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) { document.getElementById(divname).innerHTML = xmlhttp.responseText; } } xmlhttp.open("GET", dest); xmlhttp.send(null); } function timedCount() { var t; loadurl('chat.php?p=' + Math.floor(Math.random()*50000), 'chatmsgs'); t=setTimeout("timedCount()",3000); } |
ik ga eens kijken wat ik darmee kan..quote:Op woensdag 7 juni 2006 18:22 schreef DionysuZ het volgende:
Mijn (werkende) code:
[ code verwijderd ]
ik ga dat in mijn geval ook even proberenquote:Op woensdag 7 juni 2006 18:27 schreef JeRa het volgende:
De netste oplossing lijkt me toch de juiste headers meesturen in het PHP-bestand, want zo'n random waarde is wel erg hackish
Van deze pagina:
[ code verwijderd ]
en het werktquote:Op woensdag 7 juni 2006 18:32 schreef DionysuZ het volgende:
[..]
ik ga dat in mijn geval ook even proberentnx
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 | function createrequestobject() { req = false; // branch for native XMLHttpRequest object if(window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} } } else if(window.XMLHttpRequest) { req = new XMLHttpRequest(); } if( !req) { return false; } return req; } |
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 | function sndreq(action) { if(http) { http.onreadystatechange = handleresponse; http.open('GET','data.php?id='+ action, true); http.send(null); } } function handleresponse() { if (http.readyState == 4) { // only if "OK" if (http.status == 200) { //things to do for correct display display(); return true; } else { alert("There was a problem retrieving the data:\n" + http.statusText); } } } function display() { document.getElementById('content').innerHTML = http.responseText; return true; } |
1 |
Okok, doe het wel metquote:Op woensdag 7 juni 2006 17:13 schreef JeRa het volgende:
[..]
Wat is je probleem daarmee? Eventueel voeg je het later dmv. javascript toe aan het element
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 | var yrel = 0; var obj = null; function startdragging(e, id){ var x = 0; var y = 0; obj = document.getElementById(id); if(document.all){ x = event.clientX + document.body.scrollLeft; y = event.clientY + document.body.scrollTop; } else { x = e.pageX; y = e.pageY; } xrel = x - parseInt(obj.style.left); yrel = y - parseInt(obj.style.top); obj.style.cursor = 'move'; document.onmousemove = drag; } function stopdragging(){ obj.style.cursor = 'default'; document.onmousemove = null; } function drag(e) { // var obj = document.getElementById('drag'); if (document.all) { x = event.clientX + document.body.scrollLeft; y = event.clientY + document.body.scrollTop; } else { x = e.pageX; y = e.pageY; } obj.style.top = y - yrel; obj.style.left = x - xrel; return true; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="generator" content="PSPad editor, www.pspad.com"> <style type="text/css"> <!-- .cholder{ position: absolute; width: 200px; background-color: #fff000; cursor: default; } --> </style> <title></title> <script type="text/javascript" src="drag.js"></script> </head> <body> <div id="drag" class="cholder" onmousedown="startdragging(event, 'drag');" onmouseup="stopdragging();" style="left: 100px; top: 100px;">a</div> <div id="draga" class="cholder" onmousedown="startdragging(event, 'draga');" onmouseup="stopdragging();" style="left: 300px; top: 300px;">b</div> </body> </html> |
Ik weet het niet zeker, maar moet je voor een nieuwe request niet een nieuw XMLHttpRequest object aanmaken?quote:Op woensdag 7 juni 2006 20:56 schreef mschol het volgende:
niemand een idee voor mijn probleem?
misschien een andere stuk code?
nog eff verder gezocht en lijkt aan de activexObject te liggen oid:quote:Op woensdag 7 juni 2006 21:14 schreef JeRa het volgende:
[..]
Ik weet het niet zeker, maar moet je voor een nieuwe request niet een nieuw XMLHttpRequest object aanmaken?
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 | { req = false; // branch for native XMLHttpRequest object if(window.ActiveXObject) { var types = [ 'MSXML2.XMLHTTP.6.0', 'MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP' ]; for (var i = 0; i < types.length; i++) { try { return new ActiveXObject(types[i]); } catch(e) {} } return null; } else if(window.XMLHttpRequest) { req = new XMLHttpRequest(); } if( !req) { return false; } return req; } |
Dit vind ik nog steeds de fraaiste oplossing:quote:Op woensdag 7 juni 2006 21:23 schreef mschol het volgende:
[..]
nog eff verder gezocht en lijkt aan de activexObject te liggen oid:
gebruik nu:
[ code verwijderd ]
en dit werkt ..
geen idee wat het nou was...
nof wel eff testen oinder FF (zodat ik niet die vernaggeld heb)
1 2 3 4 5 6 7 8 9 10 11 12 | window.XMLHttpRequest=function(){ var types=['Microsoft.XMLHTTP','MSXML2.XMLHTTP.5.0','MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP']; for (var i=0;i<types.length;i++){ try{ return new ActiveXObject(types[i]); } catch(ex){}; }; return undefined; }; }; |
1 |
eigenlijk is ie alleen maar wat korter dan wat ik heb, wat ik er zo van zie..quote:Op woensdag 7 juni 2006 21:47 schreef SuperRembo het volgende:
[..]
Dit vind ik nog steeds de fraaiste oplossing:
[ code verwijderd ]
Dan kan je gewoon zo een nieuwe instantie van het XMLHttpRequest object maken:
[ code verwijderd ]
(met dank aan crisp)
1 |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |