Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Themes & Theming ›

[erledigt] div per JS positionieren...erfolglos

Eingetragen von mchott (63)
am 09.01.2013 - 11:14 Uhr in
  • Themes & Theming
  • Drupal 7.x

Hallo,

nach meiner Recherche hier im Forum habe ich verschiedene Dinge ausprobiert, um ein div positionieren zu können. Das soll per JS passieren, weil ich die aktuelle Fenstergröße nutzen möchte. Ohne Drupal funktioniert das ganze schon recht gut. Binde ich die Seite dann per file_get_contents auf meiner Drupal-Seite ein, wird das div nicht mehr positioniert.

1. Ansatz ohne Erfolg
<?php echo "<div id=\"CenterPic\" style=\"position:fixed; z-index:105; left: 50%; top: 50%;background-image: url(".$src."); background-repeat: no-repeat; background-position: center center; box-shadow:0px 0px 10px 2px #000000; background-size: 100% 100%; width: 100px; height: 100px;\"></div>"; ?>

document.all.CenterPic.style.width = SW;
document.all.CenterPic.style.height = SH; ... top left

SW und SH werden korrekt ausgerechnet. Die habe ich mir mal mit alert ausgeben lassen.

2. Ansatz ohne Erfolg
<?php echo "<div id=\"CenterPic\" style=\"position:fixed; z-index:105; left: 50%; top: 50%;background-image: url(".$src."); background-repeat: no-repeat; background-position: center center; box-shadow:0px 0px 10px 2px #000000; background-size: 100% 100%; width: 100px; height: 100px;\"></div>"; ?>

var element = document.getElementById("CenterPic");
element.style.width =  SW;
element.style.height =  SH; ... top left

3. Ansatz ohne Erfolg

document.write("<div id=\"CenterPic\" style=\"position:fixed; z-index:105; left: ".Left."; top: ".Top.";background-image: url(".<?php echo $src; ?>."); background-repeat: no-repeat; background-position: center center; box-shadow:0px 0px 10px 2px #000000; background-size: 100% 100%; width: ".SW."px; height: ".SH."px;\"></div>");

4. Ansatz ohne Erfolg
drupal_add_js('jQuery(document).ready(function () { document.all.CenterPic.style.width = SW; });', 'inline');

Alle übrigen Javascriptbefehle werden korrekt ausgeführt. Ansatz 2 und 3 stammen hier aus dem Forum, aber ohne Erfolg. Auch Ansatz 4 macht nichts anderes als die bisherigen...alles funktioniert, nur das Setzen/Lesen von Werten geht nicht.

Ich bin für jeden Hinweis dankbar.

‹ [Gelöst] Location, von Ort PLZ nach PLZ Ort [erledigt] div per JS positionieren...erfolglos ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Das müsste doch auch so gehen

Eingetragen von Goekmen (1013)
am 09.01.2013 - 11:41 Uhr

Das müsste doch auch so gehen ohne JavaScript. Hast du mal einfaches CSS probiert?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo

Eingetragen von mchott (63)
am 09.01.2013 - 12:14 Uhr

Ich bin ein großer CSS Freund und in JS habe ich kaum etwas gemacht.

CSS hat an dieser Stelle einen kleinen Haken. Ich möchte Bilder auf den Bildschirm maximal anzeigen, ABER ohne Crop mit Seitenverhältnis. In CSS habe ich relative Größen %, mit denen das nicht machbar ist, weil die Bildschirme immer unterschiedlich sind und fixe Werte in px...was mich auch nicht ans Ziel gebracht hat.

Mit JS lese ich das Fenster aus und errechne meine idealen Bildparameter. Glücklich bin ich damit nicht und sonst arbeite ich auch nur mit reinen CSS "Popups", aber hier fehlt mir der richtige Gedanke. Mit JS geht es ganz gut...nur eben nicht wenn man die Inhalte in Drupal einbettet.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: nur eben nicht wenn

Eingetragen von Genesis (597)
am 09.01.2013 - 12:19 Uhr
Zitat:

nur eben nicht wenn man die Inhalte in Drupal einbettet.

Wie bettest du denn das JS ein? Bitte beachten, dass JS in Drupal nach bestimmten Mustern eingebunden werden muss, damit es richtig funktioniert. Siehe dazu: Adding JavaScript to your theme or module (auch die Kommentare beachten!)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das JS wird ausgeführt...und

Eingetragen von mchott (63)
am 09.01.2013 - 12:30 Uhr

Das JS wird ausgeführt...und wie folgt sieht das noch verkorkste Konstrukt aus:

zeige_fullscreen.php (hier steht der JS-Code drin)

In einer Drupalseite (PHP) rufe ich per file_get_contents("zeige_fullscreen.php?para=1&para=2") die Inhalte auf.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Lösung

Eingetragen von mchott (63)
am 10.01.2013 - 16:28 Uhr

Die Lösung war recht ärgerlich.

Falsch:
element.style.width =  SW;

Richtig:
element.style.width =  SW + "px";

Warum der Code in Drupal das "px" braucht und sonst nicht, ist mir unklar, aber es war die Lösung!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 4 Wochen 17 Stunden
  • Vielen Dank für Ihren
    vor 4 Wochen 3 Tagen
  • Composer ist sehr ratsam
    vor 4 Wochen 5 Tagen
  • Vielen Dank für den
    vor 5 Wochen 21 Stunden
  • Die alten CMS Vergleiche von contentmanager.de
    vor 5 Wochen 1 Tag
  • Gut gemacht
    vor 5 Wochen 1 Tag
  • Layout Builder etc. z.B. für Landing Pages
    vor 5 Wochen 1 Tag
  • Links
    vor 5 Wochen 4 Tagen
  • Moin,wow, sehr gutes
    vor 5 Wochen 5 Tagen
  • Dass ist eine spannende
    vor 5 Wochen 5 Tagen

Statistik

Beiträge im Forum: 250316
Registrierte User: 20566

Neue User:

  • Robertspaft
  • drupalthemes
  • rofilm

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 20 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association