Ik wil een door de gebruiker samengestelde pagina opslaan als afbeelding.quote:Op donderdag 21 maart 2013 15:36 schreef Catch22- het volgende:
Nee. Waarom zou je dat mogelijkw illen?
Je zou url2png kunnen gebruiken. Maar ik zou er eens goed over nadenken of je inderdaad echt plaatjes van HTML wil, want dat is niet erg logisch.quote:Op donderdag 21 maart 2013 15:38 schreef pascal08 het volgende:
[..]
Ik wil een door de gebruiker samengestelde pagina opslaan als afbeelding.
Wat is dan wel logisch? Ik vond het vrij logische toepassing voor m'n site, maar toen ik op onderzoek ging bleek het toch niet zo gangbaar als ik dacht.quote:Op donderdag 21 maart 2013 15:43 schreef Tijn het volgende:
[..]
Je zou url2png kunnen gebruiken. Maar ik zou er eens goed over nadenken of je inderdaad echt plaatjes van HTML wil, want dat is niet erg logisch.
Fluid is sowieso beter dan van hak op de tak breakpoints. En dan helemaal als mensen ook nog iOS breakpoints gebruiken.quote:Op dinsdag 19 maart 2013 10:21 schreef n8n het volgende:
[ code verwijderd ]
als je nu alleen em's of procenten gebruikt voor je maateenheden heb je een lay-out waarvan alles, inclusief de breakpoints, schaalt.
De posities en breedtes/hoogtes van de elementen opslaan?quote:Op donderdag 21 maart 2013 16:19 schreef pascal08 het volgende:
[..]
Wat is dan wel logisch? Ik vond het vrij logische toepassing voor m'n site, maar toen ik op onderzoek ging bleek het toch niet zo gangbaar als ik dacht.
En dan?quote:Op donderdag 21 maart 2013 16:21 schreef BBQSausage het volgende:
[..]
De posities en breedtes/hoogtes van de elementen opslaan?
En het dan her-opbouwen. Weet niet waar je die indeling voor nodig hebt, maar het lijkt me dat je meer aan de afmetingen hebt dan aan een afbeelding van een indeling, zonder enige maten of aanduidingen.quote:
Ik dacht dat het gewoon het simpelste zou zijn om een snapshot te nemen van de samenstelling van de gebruiker. Echter zijn de meeste scripts heel beperkt in de browsercompatibiliteit, dus erg gebruiksvriendelijk is dat ook niet.quote:Op donderdag 21 maart 2013 16:26 schreef BBQSausage het volgende:
[..]
En het dan her-opbouwen. Weet niet waar je die indeling voor nodig hebt, maar het lijkt me dat je meer aan de afmetingen hebt dan aan een afbeelding van een indeling, zonder enige maten of aanduidingen.
Geen idee waarom je dat zou willen doen? Moet vast makkelijker kunnen.quote:Op donderdag 21 maart 2013 18:22 schreef -Datdus- het volgende:
Ik had nog een vraagje. Hoe kan je er in javascript voor zorgen dat elke keer dat een functie wordt aangeroepen het eerste item van een array wordt weggehaald en de rest dan doorschuift zeg maar zodat het tweede item de eerste is?
Gewoon Array.shift() gebruiken toch? Of mis ik iets?quote:Op donderdag 21 maart 2013 18:22 schreef -Datdus- het volgende:
Ik had nog een vraagje. Hoe kan je er in javascript voor zorgen dat elke keer dat een functie wordt aangeroepen het eerste item van een array wordt weggehaald en de rest dan doorschuift zeg maar zodat het tweede item de eerste is?
Dat bedoelde ik nou met 'het kan vast gemakkelijker'. Weer een handige method geleerdquote:Op donderdag 21 maart 2013 20:39 schreef FigureBirdStars het volgende:
[..]
Gewoon Array.shift() gebruiken toch? Of mis ik iets?
Ook niet in alle gevallen, fluid geeft weinig controle over het aantal karakters per regel in tekst, iets wat essentieel is om te hebbenquote:Op donderdag 21 maart 2013 16:20 schreef boem-dikkie het volgende:
[..]
Fluid is sowieso beter dan van hak op de tak breakpoints. En dan helemaal als mensen ook nog iOS breakpoints gebruiken.
Leuk!quote:Op zaterdag 23 maart 2013 08:04 schreef raptorix het volgende:
[..]
Ja, kijk vooral ook naar 3DJS.org daar staan paar leuke heatmap samples in combinatie met geojson, ik zal maandag even mijn sample op basis van deze jaart neergooien
1 2 3 4 5 | <div class="infobox-wrapper"> <div id="infobox"> <div id="infobox-content">loading information.</dov> </div> </div> |
1 2 3 4 5 6 7 8 9 10 11 | google.maps.event.addListener(marker, 'click', function() { $.ajax({ url: '/test/ajax?name=' + name + '&id=' + id, success: function(data) { //infoWindow.setContent(data); $('#infobox').innerHTML = data; infoWindow.open(map, marker); } }); }); |
quote:Op zaterdag 23 maart 2013 08:13 schreef raptorix het volgende:
Volgens mij kan je gewoon $('#infobox').text(data); gebruiken, anders even googlen op jquery replace text within div.
1 | $('#infobox-content').text(data); |
1 | $('#infobox-content').innerHTML = data; |
Helaas werkt onderstaand voorbeeld ook nietquote:Op zaterdag 23 maart 2013 08:16 schreef Chandler het volgende:
[..]
[ code verwijderd ]
werkt totaal niet (geeft ook geen error trouwens)
[ code verwijderd ]
plaatst tekst maar vervangt styling
Op zich weet ik hoe ik tekst kan aanpassen $('#div').innerHTML maar dat werkt op een of andere manier niet samen met de styling en als ik de content niet aanpas zie ik een leuke box met 'loading....'
1 | infoWindow.setContent('<div class="infobox-wrapper"><div id="infobox">' + data + '</div></div>'); |
Ja die dov moet een div zijn lol maar die had ik reeds gevonden en aangepast.quote:Op zaterdag 23 maart 2013 10:12 schreef Light het volgende:
[..]
Die </dov> moet </div> zijn, neem ik aan.
[..]
Hoe ziet je css eruit? Ik denk dat re geen styling zit op #infobox maar alleen op de div daarin (#infobox-content). Die verdwijnt, dus gaat de styling ook weg.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | .infobox-wrapper { display:none; } #infobox { border:2px solid black; margin-top: 8px; background:#333; color:#FFF; font-family:Arial, Helvetica, sans-serif; font-size:12px; padding: .5em 1em; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; text-shadow:0 -1px #000000; -webkit-box-shadow: 0 0 8px #000; box-shadow: 0 0 8px #000; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | infoWindow = new InfoBox({ content: $("#infobox"), disableAutoPan: false, maxWidth: 150, pixelOffset: new google.maps.Size(-140, 0), zIndex: null, boxStyle: { background: "url('http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/tipbox.gif') no-repeat", opacity: 0.75, width: "280px" }, closeBoxMargin: "12px 4px 2px 2px", closeBoxURL: "http://www.google.com/intl/en_us/mapfiles/close.gif", infoBoxClearance: new google.maps.Size(1, 1) }); |
Helaas is dat ook geen optie jQuery() is het zelfde als $ en die werkt op zich wel maar vervangt de inhoud van de infoWindow maar dan ook compleet incl styling... en dat is nou niet de bedoeling.quote:Op zaterdag 23 maart 2013 18:42 schreef Devolution het volgende:
En als je
[ code verwijderd ]
gebruikt in plaats van
[ code verwijderd ]
werkt het dan ook niet?
Sowieso nooit meer dan 64, daar kun je natuurlijk op letten.quote:Op donderdag 21 maart 2013 22:16 schreef n8n het volgende:
[..]
Ook niet in alle gevallen, fluid geeft weinig controle over het aantal karakters per regel in tekst, iets wat essentieel is om te hebben
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 | function createMarker(latlng, name, address, id) { // var html = '<div style="width:275px;"><b>' + name + '</b> <br/>' + address + '</div>'; var marker = new google.maps.Marker ({ map: map, position: latlng }); google.maps.event.addListener(marker, 'click', function() { $.ajax({ url: '/test/ajax?name=' + name + '&id=' + id, success: function(data) { var str = '<div class="infobox-wrapper"><div id="infobox">' + data + '</div></div>'; // alert(str); infoWindow.setContent(str); // verwijderd styling, laat NIETS zien. infoWindow.setContent(data); // verwijderd content laat styling zien. //$('#infobox-content').text(data); // doet zelfde als bovenstaand //$('#infobox-content').innerHTML = data; // same o same. infoWindow.open(map, marker); } }); }); markers.push(marker); } |
is alleen een beetje lastig met fluid design > procentenquote:Op zondag 24 maart 2013 00:04 schreef boem-dikkie het volgende:
[..]
Sowieso nooit meer dan 64, daar kun je natuurlijk op letten.
Nee at is het probleem niet, zal eens proberen om ook de opmaak via ajax te versturen en kijken of ik dan de stijl kan behouden maar lijkt me sterkquote:Op zondag 24 maart 2013 11:24 schreef Devv het volgende:
Wat krijg je terug in data? Misschien zitten daar karakters in die de opmaak kapot maken.
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.-edit 3-
En een ander, want nu wordt deze functie automatisch getriggerd als ik map.fitBounds doehoe zorg ik er voor dat wanneer ik map.fitBounds aanroep de zoom functie niet alsnog getriggerd wordt?
1
2
3
4google.maps.event.addListener(map, 'zoom_changed', function()
{
BoundBasedMarkers(map)
});
Als ik nu een adres laad via een zoek functie, wordt map.fitBounds gebruikt om de map goed te positioneren, echter wordt direct daarna binnen de bounds nog een oproep gedaan om de markers te in te lezen, dus dubbel....
opgelost:SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Ik leer het allemaal nog wel![]()
en nu kijken hoe ik die OMS er dynamisch in kan zetten
[ Bericht 26% gewijzigd door Chandler op 25-03-2013 14:19:00 ]The people who lost my respect will never get a capital letter for their name again.
Like trump...
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 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 | var map, json; // markers = []; var infoWindow; var zoomIgnore = false; function load() { map = new google.maps.Map(document.getElementById("map"), { center: new google.maps.LatLng(40, -100), zoom: 4, maxZoom: 11, mapTypeId: 'roadmap', mapTypeControlOptions: {style: google.maps.MapTypeControlStyle.DROPDOWN_MENU}, scrollwheel: false }); // infoWindow = new google.maps.InfoWindow(); infoWindow = new InfoBox({ content: $("#infobox"), disableAutoPan: false, pixelOffset: new google.maps.Size(-140, 0), zIndex: null, boxStyle: { background: "url('http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/tipbox.gif') no-repeat", opacity: 0.75 }, closeBoxMargin: "12px 4px 2px 2px", closeBoxURL: "http://www.google.com/intl/en_us/mapfiles/close.gif", infoBoxClearance: new google.maps.Size(1, 1) }); /* functions to enable reload after zooman drag */ google.maps.event.addListener(map, 'dragend', function() { BoundBasedMarkers(map); }); google.maps.event.addListener(map, 'zoom_changed', function() { if (zoomIgnore) { return false; } BoundBasedMarkers(map); }); } function BoundBasedMarkers(map) { var searchUrl = '/test/script?' + 'SW_LAT=' + map.getBounds().getSouthWest().lat() + '&SW_LNG=' + map.getBounds().getSouthWest().lng() + '&NE_LAT=' + map.getBounds().getNorthEast().lat() + '&NE_LNG=' + map.getBounds().getNorthEast().lng(); $.ajax({ url: searchUrl, error: function() { alert('Er is geen data gevonden worden binnen gegeven coordinaten'); }, dataType: "json", success: function (json) { var bounds = new google.maps.LatLngBounds(); for (var i = 0, length = json.length; i < length; i++) { var data = json[i]; var latLng = new google.maps.LatLng(data.lat, data.lng); createMarker(latLng, data.id, data.name); bounds.extend(latLng); } createList(); } }); } function searchLocations() { var address = $("#addressInput").val(); var geocoder = new google.maps.Geocoder(); geocoder.geocode({address: address}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { var center = results[0].geometry.location; var radius = $('#radiusSelect').val(); var searchUrl = '/test/script?lat=' + center.lat() + '&lng=' + center.lng() + '&radius=' + radius; $.ajax({ url: searchUrl, dataType: "json", error: function() { alert('Er is geen data gevonden worden met opgegeven lokatie'); }, success: function (json) { zoomIgnore = true; var bounds = new google.maps.LatLngBounds(); for (var i = 0, length = json.length; i < length; i++) { var data = json[i]; var latLng = new google.maps.LatLng(data.lat, data.lng); createMarker(latLng, data.id, data.name); bounds.extend(latLng); } map.fitBounds(bounds); zoomIgnore = false; createList(); } }); } else { alert(address + ' not found'); } }); } function createMarker(latlng, id, name) { var marker = new google.maps.Marker({ map: map, position: latlng }); google.maps.event.addListener(marker, 'click', function() { $.ajax({ url: '/test/ajax?name=' + name + '&id=' + id, success: function(data) { infoWindow.setContent('<div class="infobox-wrapper"><div id="infobox" style="display: block;">' + data + '</div></div>'); infoWindow.open(map, marker); map.setCenter(marker.getPosition()); } }); }); // markers.push(marker); } function createList() { console.log('createlist'); if (typeof json !== 'undefined') { for (var i = 0, length = json.length; i < length; i++) { var data = json[i]; $('#list').append('<div id="addresslist"><h2>' + data.name + '</h2><p>' + data.address + '</p></div>'); } } } //]]> |
Ik dacht dat doordat ik var json; in het begin van het script heb gezet, deze array overal te benaderen was... maar daar zit ik dus fout mee? hoe kan ik wel zorgen dat deze data overal beschikbaar is?quote:Op donderdag 28 maart 2013 08:18 schreef Catch22- het volgende:
Je moet de jsondata wel meegeven natuurlijk
Je definieert hem als lege variabel, waar stop je er data in?quote:Op donderdag 28 maart 2013 08:59 schreef Chandler het volgende:
[..]
Ik dacht dat doordat ik var json; in het begin van het script heb gezet, deze array overal te benaderen was... maar daar zit ik dus fout mee? hoe kan ik wel zorgen dat deze data overal beschikbaar is?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |