Seite 1 von 3

Snippet: Scrollbalken bei der Artikelbeschreibung entfernen

Verfasst: 28.06.2005, 19:10
von Mischa
Zur Info:

seit dem 09.03.2006 ist diese Funktion ab der Version v3.1.29 schon bei Baywotch fest eingebaut.

v3.1.29 FINAL RELEASE (09.03.2006)
- Neue Option "Ansicht -> Artikeldetails -> Artikelbeschreibung mit eigenem Scrollbalken anzeigen" (Default ist 'aktiv'). Damit läßt sich der zusätzliche Scrollbalken bei der Artikelbeschreibung deaktivieren.

------------------------




Getestet mit Version 3


Für den Wunsch scrollbalken bei der artikelbeschreibung entfernen gibt es folgende Lösung:


nachdem du dir eine sicherheitskopie von Artikel.htm gemacht hast, baue in die Artikel.htm den nachfolgenden code ein genau zwischen:

Code: Alles auswählen

....
<META name="lastchange" content="2005-04-17">
<TITLE>BayWotch Artikeldetails</TITLE>

<!------ hier einfügen --------->

<STYLE type="text/css">
<!--
body {margin:3px; background-color:#EFEFF7; font-size:8pt;}
....


hier ist der code:

Code: Alles auswählen

<script language="JavaScript" ><!--
/***********************************************

* IFrame SSI script- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
* Visit DynamicDrive.com for hundreds of original DHTML scripts
* This notice must stay intact for legal use
***********************************************/

//Input the IDs of the IFRAMES you wish to dynamically resize to match its content height:
//Separate each ID with a comma. Examples: ["myframe1", "myframe2"] or ["myframe"] or [] for none:
var iframeids=["desc_frame"]

//Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended):
var iframehide="yes"

var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers

function dyniframesize() {
	var dyniframe=new Array()
	for (i=0; i<iframeids.length; i++){
		if (document.getElementById){ //begin resizing iframe procedure
			dyniframe[dyniframe.length] = document.getElementById(iframeids[i]);
			if (dyniframe[i] && !window.opera){
				dyniframe[i].style.display="block"
				if (dyniframe[i].contentDocument && dyniframe[i].contentDocument.body.offsetHeight) //ns6 syntax
					dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight+FFextraHeight; 
				else if (dyniframe[i].Document && dyniframe[i].Document.body.scrollHeight) //ie5+ syntax
					dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;
			}
		}
		//reveal iframe for lower end browsers? (see var above):
		if ((document.all || document.getElementById) && iframehide=="no"){
			var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
			tempobj.style.display="block"
		}
	}
}

if (window.addEventListener)
	window.addEventListener("load", dyniframesize, false)
else if (window.attachEvent)
	window.attachEvent("onload", dyniframesize)
else
	window.onload=dyniframesize


//--></script>


nach einem neustart von baywotch verschwinden die scrollbalken, sobald die artikelbeschreibung vollständig (auch die bilder) geladen wurde :-)

Verfasst: 28.06.2005, 20:20
von denkmann
Hi Mischa,

funktioniert prima!

Nun würde mich wirklich interessieren, ob dieses Verhalten besser ankommt, als die Scroll-Variante. Falls ja, werde ich gerne nochmal auf Dich zukommen, um die Rechte an dem Code zu erwerben. ;)

Verfasst: 28.06.2005, 20:57
von migo
Hi,

das ist genial :D!

Dadurch ist das Arbeiten sehr viel angenehmer und flüssiger. Die Version ohne den Scrollbalken ist eindeutig besser.

Michael

Verfasst: 28.06.2005, 22:09
von Mash
Super, Mischa, cooler Patch! 8-)

Für mich persönlich eine Option, die meiner (Nutz-)Gewohnheit sehr entgegenkommt.

Vielen Dank!

Verfasst: 28.06.2005, 22:28
von Mischa
denkmann hat geschrieben:Falls ja, werde ich gerne nochmal auf Dich zukommen, um die Rechte an dem Code zu erwerben. ;)
*grübel* so einen klitzekleinen lizenzkey würde ich da in betracht ziehen *grins*

spaß beiseite:
bevor ich nochmal selbst das rad neu programmiere habe ich mit googeln diese allgemeine lösung gefunden und die scheint freeware zu sein:

Code: Alles auswählen

/***********************************************
* IFrame SSI script- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
* Visit DynamicDrive.com for hundreds of original DHTML scripts
* This notice must stay intact for legal use
***********************************************/ 
und falls es noch jemand braucht: auf der seite gibt es noch das iframe script version II, welches auch nach nachträglicher contentänderung im iframe die größe erneut anpaßt.

Verfasst: 28.06.2005, 23:10
von Mash
Mischa hat geschrieben:bevor ich nochmal selbst das rad neu programmiere habe ich mit googeln diese allgemeine lösung gefunden [...]
Ich wüßte nicht einmal, wonach ich googlen sollte... ???:(

Verfasst: 28.06.2005, 23:15
von Mischa
Mash hat geschrieben:Ich wüßte nicht einmal, wonach ich googlen sollte... ???:(
stimmt. wenn mir jemand lapidar nur sagt: dann such doch noch besser bei google dann hau ich ihm schon die bits und bytes um die ohren.

es kommt wirklich auf die richtigen stichworte an:

Google-Suche: iframe resize

Verfasst: 28.06.2005, 23:42
von Borkumer
Hallo!

Meine Meinung: unbedingt in BW einbauen!

Hatte mich schon an den jetzigen Zustand gewöhnt, aber mit einem Mausfesthalteklick alles durchzuscrollen ist doch schon besser.

Genehmigt!!! ;D

Verfasst: 01.07.2005, 12:08
von wotchbert
:!: TOP :!:

Verfasst: 06.07.2005, 17:45
von msc
Super Idee!

Gibt es eine Möglichkeit zu verhindern, dass nach dem Wort Artikelbeschreibung ein Seitenvorschub kommt?

Wenn ich einen Rechtsklick mache und Drucken wähle, werden drei Seiten ausgegeben:

- die erste Seite enthält nur die Artikeldaten und die Überschrift Artikelbeschreibung inkl. der Größenangabe, der Rest des Blattes ist leer
- die zweite Seite enthält die Artikelbeschreibung
- die dritte Seite ist leer (ich weiß nicht ob das Zufall ist oder auch hier
ein ungewollte Seitenvorschub drin ist)

PS: Der Font in der Artikelbeschreibung ist sehr groß - wie kriege ich den kleiner?

Verfasst: 06.07.2005, 18:34
von Mischa
bei mir ist das auch mit den verschiedenen seiten. bei mir fehlt auch bei der artikelbeschreibung der rest, der nicht auf das 2. blatt gepaßt hat.

ich vermute, daß der seitenumbruch und die abgeschnittene artikelbeschreibung durch das iframe passiert.


ich glaub nicht, daß man da viel machen kann.

auch mittels der events vorm drucken etc. ist auch nicht viel zu erreichen:

http://msdn.microsoft.com/workshop/auth ... /print.asp
Calling the print method has the same effect as choosing Print from the Microsoft Internet Explorer File menu. The print method activates the Print dialog box, prompting the user to change print settings. When the user clicks the OK button, the following sequence of events occurs:

1. The onbeforeprint event fires.
2. The document prints.
3. The onafterprint event fires.

The onbeforeprint and onafterprint events are particularly useful when not all the information on the page is visible at all times. Use the onbeforeprint to modify the document to make all the information on the page visible for printing. To return the document to its original state, use the onafterprint event.
http://msdn.microsoft.com/workshop/auth ... eprint.asp
http://msdn.microsoft.com/workshop/auth ... rprint.asp

Verfasst: 06.07.2005, 19:11
von msc
Hmm, kann man den IFRAME dann nicht einfach evtl. komplett durch einen normalen Frame ersetzen? Wenn ich das richtig verstanden habe, war das Haupargument für den IFrame ja wohl der Erhalt der Formatierung.

Verfasst: 06.07.2005, 20:49
von Mischa
ich denk ob nun ifrme oder frame - das problem wird das gleiche bleiben ...

Verfasst: 30.07.2005, 19:35
von RitchieRich
Eindeutig komfortabler zu bedienen mit der Ergänzung.
Hat mich schon genervt mit dem Scrollbalken.

Verfasst: 31.07.2005, 23:08
von lvcc
Super - gefällt auch mir wesentlich besser so!

Mußt du aber nicht unbedingt einbauen, da das Script ja funktioniert, kann das jeder bei Bedarf selbst installieren, ist ja echt ein Kinderspiel...


Mike