Radio Buttons

  • Themenstarter Themenstarter ByeBye 274521
  • Beginndatum Beginndatum
Nein die if-Bedingungen kannst du dir dann sparen. Url und imageSize sind ja die einzigen Eigenschaften die du jeweils veränderst. Und genau die Eigenschaften übergibst du ja dann schon.
Du kannst also einfach folgendes machen
HTML:
<input ... onchange="checkedRadioBtn('Bild1.png' , [733, 152])" />
Javascript:
function checkedRadioBtn(url, size){
newL = new ol.layer.Image({
  source: new ol.source.ImageStatic({
  url: url,
  imageSize: size,
  projection: pixelProjection,
  imageExtent: pixelProjection.getExtent()
  })
  });
map.removeLayer(baseLayer);
  map.addLayer(newL);
}
Danke, dass du die angestoßene Diskussion aufgegriffen, und meinem Lösungsvorschlag das passende Script-Beispiel hast folgen lassen :)
 
Ist noch ein Problem aufgetretten mit den Radios ;-(

function checkedRadioBtn(){...};
Den code habe ich hier:
http://jsfiddle.net/B9qkU/6/

Vorgehen:
Code:
<label class="radio" for="bild-switch_1"><input id="bild-switch_3" class="bild-switch_1a" type="radio" name="bilder" value="Bild3" onchange="checkedRadioBtn('Bild1.png', [733,152])" />Bild 3
</label>
die Projection ist 444, 66 da jedes Bild ja unterschiedlich groß ist habe ich den yMax mit Dreisatz berechnet. Spricht 444*152/733 = 92 soll mein yMax sein. Also meine Höhe. Und so habe ich für die anderen Bilder die ich selektiere gemacht. Richtig so?

Mein Problem ist, dass wenn ich ein Radio button aktiviere und dann zeichnen will und danach ein anderes Radio button aktiviere, dann wird die Zeichnung im Hintergrund gesehen und die Bilder überlappen sich. Leider finde ich den Fehler nicht und würde mich freuen, wenn ihr mir dabei weiterhelfen könnt. Code ist auch in fiddle: function checkMeassure(){...};

lg
 
Zuletzt bearbeitet von einem Moderator:
Zurück