Zum Inhalt springen

Bilder trennen

Erstellt am 9. Februar 2009 · 15 Antworten · letzte Antwort am 10. Februar 2009

Tags: Frage

Steinvirus ·

hallo leute ich würde gerne das skript von georg der er mir mal gegeben hat trennen.. damit ich die kleinen bilder von dem großen trennen kann um dazwischen den inhalt zu platzieren...

lib.imageswap = COA
lib.imageswap {
	# BIG IMAGE
	1 = IMAGE
	1 {
		file {
			maxW = 399
			maxH = 300

			import= uploads/media/
			import.data = levelmedia: -1,slide
			import.listNum = 0
			import.override.field = media
		}
		params = name="image_big" id="bigimg"
	}

	# SMALL THUMBS
	10 <.1
	10 {
		file {
			maxW = 134
			maxH = 94
		}
		params = onclick="swap('image_big', this)" id="smallimg"!
		
		longdescURL.cObject = IMG_RESOURCE
		longdescURL.cObject.file {
			import.data = TSFE:lastImageInfo|origFile
			maxW = 400
			maxH = 300
		}
	}
	
	20 <.10
	20.file.import.listNum = 1
	30 <.10
	30.file.import.listNum = 2
	40 <.10
	40.file.import.listNum = 3
	50 <.10
	50.file.import.listNum = 4
	
	# JS
	100 = TEXT
	100.value (
		<script type="text/javascript">
		  <!--
		  function swap(image_big,image) { document.images[image_big].src = image.getAttribute('longdesc'); }
		  //-->
		</script>	
	)
}

und hier das beispiel:
http://www.rggooglemap.com/dev/fun/ts-image-swap.html

Julian.​Hofmann ·

Hallo.

Dem lib.imageswap kannst Du doch beliebige weitere Objekte hinzufügen bzw. einschieben. Z.B.

lib.imageswap.5 < styles.content.get

Oder eben "nur" das lib.imageswap-Objekt trennen

lib.imageswap = COA
lib.imageswap {
	# BIG IMAGE
	1 = IMAGE
	1 {
		file {
			maxW = 399
			maxH = 300

			import= uploads/media/
			import.data = levelmedia: -1,slide
			import.listNum = 0
			import.override.field = media
		}
		params = name="image_big" id="bigimg"
	}
}

und

lib.imageswap2 {
	# SMALL THUMBS
	10 <.1
	10 {
		file {
			maxW = 134
			maxH = 94
		}
		params = onclick="swap('image_big', this)" id="smallimg"!
		
		longdescURL.cObject = IMG_RESOURCE
		longdescURL.cObject.file {
			import.data = TSFE:lastImageInfo|origFile
			maxW = 400
			maxH = 300
		}
	}
	
	20 <.10
	20.file.import.listNum = 1
	30 <.10
	30.file.import.listNum = 2
	40 <.10
	40.file.import.listNum = 3
	50 <.10
	50.file.import.listNum = 4
	
	# JS
	100 = TEXT
	100.value (
		<script type="text/javascript">
		  <!--
		  function swap(image_big,image) { document.images[image_big].src = image.getAttribute('longdesc'); }
		  //-->
		</script>	
	)
}

Kann es sein, dass Du Dich mal mit der Idee/Bedeutung von Typoscript beschäftigen solltest?

Viele Grüße
Julian

Steinvirus ·

naja das haubtproblem ist das ich das große bild frei platziren möchte.. das mache ich ja per css doch dann wenn ich das fenster kleiner machte verschiebt sich das ganze.. kan ich per typoskript das so platieren das ich das fest habe ohne das es sich verschiebt ?

Steinvirus ·

nein leider nciht arbeite lokal .. also es gibt ja die Maximiren und die Verkleinern funktion beim jedem Browser... jetzt habe ich meinen Browser verkleinert als das fenster kleiner gemacht, jetzt verschieb sich nur ein bild das ich mit einer absolute position genau posizonirt habe. kann ich also jetzt bestimmte bilder genau festigen ? .. das bild was sich verschiebt ist das vergrößerte bild # BIG IMAGE

Julian.​Hofmann ·

Das hat ja mit Typoscript ansich nichts zu tun, sondern mit Deinem HTML-Code und dem CSS. Es ist allerdings schwer ins Blaue hinein zu raten, was wie funktionieren könnte. Dazu wäre es schon sehr hilfreich den HTML-Code und das CSS mal sehen zu können.
Evtl. mal die Seite speichern samt CSS, Javascript,... und als statische Version irgendwo hochladen.

Julian.​Hofmann ·

Ok, jetzt verstehe ich, was Du meinst. Du positionierst das Bild fest mittels:

#bigimg {
  position: absolute;
  margin-left: 11px;
  bottom: 205px;
}

Wenn nun das Fenster in der Höhe verändert wird, rutscht das Bild entsprechend nach, sodass wieder die vorgegebenen 205px Abstand vom Fensterende her eingehalten werden.

Was mir bei dem Ganzen unklar ist: Warum positionierst Du das Bild überhaupt fix? Das erschließt sich mit leider auch nicht anhand des Layouts.

Julian.​Hofmann ·

Das "genau da plaztiert" ist mein Problem. Ich verstehe nicht/sehe nicht, wo das Bild eigentlich sein soll. Denn vermutlich ist mein Monitor/Fenster nicht exakt wie Deiner, d.h. bei mir das Bild von vornherein falsch platziert.

Wenn das Bild im normalen Textfluss sein soll, warum positionierst Du es absolut statt es ganz einfach (ohne irgenwelche CSS-Angaben) als <img> einzusetzen, wo es stehen soll?

Wenn das Bild in den Header soll, dann müsstest Du das Objekt lib.imagewrap1 dem entsprechenden Marker zuweisen, der ...header_mitte_oberteil.gif ersetzt.

Julian.​Hofmann ·

Also für mich sieht das etwas aus, als würdest Du in ein HTML-Grundgerüst ein Layout reinpressen wollen, das einfach nicht in dieser Form reinpasst. Ansich müsstest Du lib.imagewrap1 an die Stelle des Bildes ..._header_mitte_oberteil.gif setzen. Durch das Tabellengrundgerüst kann das Bild dann aber nicht weiter als bis zur Textgrundlinie der Links "Start","Kontakt",... gehen, da dort die Tabellenzelle endet...

Glaube, Du solltest Dir nochmal Gedanken machen, was Du im Layout alles wann, wie haben willst. Solltest Dir dann Dein Layoutraster entsprechend anlegen und dafür ein Template bauen.
Denn so wie ich das sehe mag es zwar irgendwie schon möglich sein mit zig Tricks das Layout so hinzubekommen, wie Du willst, aber Du machst es Dir unnötig schwer.

Julian.​Hofmann ·

Da würde ich mal eher tippen:
Überall verschiebt es sich (wie per CSS festgelegt), nur der IE interpretiert das CSS nicht bzw. falsch. Denn z.B. Safari verhält sich genauso ungewünscht wie FF.