• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Zweite Bildlaufleiste entfernen bei Iframe-Inhalten

M

mcdutch

Guest
Ich habe eine Website, die 2 Bildlaufleisten anzeigt ( Lagerfahrzeuge ).

Das ist natürlich unschön und möchte ich vermeiden.

Nun würde ich gerne die linke Bildlaufleiste entfernen und stelle mir die Frage, wie ich es am besten anstelle.

Die Seite ist so aufgebaut:

Div id vt_main_com: Ist der ganze Bereich der Seite (1. bildlaufleiste).

Div id vt_inset: Hier werden per iframe Inhalte reingeladen und das ist der Bereich, wo ich die Bildlaufleiste entfernen möchte. (2. Bildlaufleiste, die ich entfernen möchte)

Div id vt_nav_right: Hier wird nochmals per Iframe Inhalte reingealden.

Problem wird vor allem das Iframe sein. Dadurch ändert sich die Höhe immer wieder. Was wäre eine passende Lösung für dieses Problem?

Ich vermute, dass ich es irgendwie mit Javascript machen muss.

Oder geht das überhaupt?


Das ist mein derzeitiger Javascript-Code:

HTML:
function iFrameHeight() {
var h = 0;
if (!document.all) {
h = document.getElementById('blockrandom').contentDocu ment.height;
document.getElementById('blockrandom').style.heigh t = h + 60 + 'px';
} else if (document.all) {
h = document.frames('blockrandom').document.body.scrol lHeight;
document.all.blockrandom.style.height = h + 20 + 'px';
}
}

- - - Aktualisiert - - -

Den bestehenden Code habe ich nun mit einem anderen Script ersetzt.


Problem ist jetzt allerdings, dass es nur funktioniert, wenn ich den Buffer auf -3800 Stelle.

Dann verschwindet meine Bildlaufleiste. Kann man an dem Code sonst noch etwas machen? Ich verstehe die Funktionsweise nicht ganz.


Code:
<script type="text/javascript">
function pageY(elem) {
    return elem.offsetParent ? (elem.offsetTop + pageY(elem.offsetParent)) : elem.offsetTop;
}
var buffer = -3800; //scroll bar buffer
function iFrameHeight() {
    var height = document.documentElement.clientHeight;
    height -= pageY(document.getElementById('blockrandom'))+ buffer ;
    height = (height < 0) ? 0 : height;
    document.getElementById('blockrandom').style.height = height + 'px';
}
document.getElementById('blockrandom').onload=iFrameHeight;
window.onresize = iFrameHeight;
 
</script>
 
Zuletzt bearbeitet von einem Moderator:
Oder geht das überhaupt?
Eher nicht. Da ist die SOP im Weg.
Ob du das doch machen kannst, ist davon abhängig, ob du das HTML der Seite, die im iFrame dargestellt wird, kontrollierst oder nicht.

Theoretisch könntest du Can I use... Support tables for HTML5, CSS3, etc verwenden, aber das unterstützt hald noch kein Browser...


Das ist mein derzeitiger Javascript-Code
Der dir wegen der SOP einen Fehler in der Fehlerkonsole erzeugt.

Der neue Code ist seltsam. Wo hast du denn den her?
 
Zurück
Oben