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

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 4 Tagen 2 Minuten
  • Guckst du hier: step by step
    vor 3 Tagen 13 Stunden
  • Guckst du hier: step by step
    vor 3 Tagen 13 Stunden
  • Ich habe ja keine Angst vor
    vor 1 Woche 5 Tagen
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 2 Wochen 1 Tag
  • Vielen Dank erst einmal, aber
    vor 2 Wochen 2 Tagen
  • Du hast die "Trusted host
    vor 2 Wochen 3 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 4 Wochen 2 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 4 Wochen 5 Tagen
  • Arrrrg. Nix Tabelle :-D /*
    vor 9 Wochen 21 Stunden

Statistik

Beiträge im Forum: 250284
Registrierte User: 20498

Neue User:

  • Inga GuAph
  • Robertolix
  • DavidBit

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 73 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