Bestimmen Sie die Hintergrundbildabmessungen von Divs in jQuery
Problem:
Ermitteln der Breite und Höhe eines Divs Hintergrundbild mit jQuery scheint schwer fassbar. Herkömmliche Versuche wie $('#myDiv').css('background-image').height(); erhalte den Fehler „keine Funktion“.
Lösung:
Glücklicherweise gibt es eine geniale Lösung. Durch die Nutzung der Möglichkeiten der Erstellung eines neuen Bildobjekts können Bildabmessungen ermittelt werden, auch wenn diese nicht explizit im CSS definiert sind. Hier ist eine aktualisierte Version des Skripts:
var image_url = $('#something').css('background-image'), image; // Extract the URL without the url() or url("") wrapper image_url = image_url.match(/^url\("?(.+?)"?\)$/); // Proceed if the image URL was obtained if (image_url[1]) { image_url = image_url[1]; // Create a new Image object image = new Image(); // Trigger an event when the image is loaded // This ensures we get the actual image dimensions $(image).load(function () { alert('Width: ' + image.width + '\nHeight: ' + image.height); }); image.src = image_url; }
Verbesserter Ansatz (2018):
Im Folgenden wird eine umfassendere Lösung vorgestellt, die verbesserte Funktionalität und Fehlerbehandlung bietet:
var getBackgroundImageSize = function(el) { // Extract the image URL var imageUrl = $(el).css('background-image').match(/^url\(["']?(.+?)["']?\)$/); // Create a deferred object var dfd = new $.Deferred(); // Handle existence of image URL if (imageUrl) { // Create a new Image object var image = new Image(); // Resolve the deferred on load, reject on error image.onload = dfd.resolve; image.onerror = dfd.reject; // Assign the image source image.src = imageUrl[1]; } else { // Image not available, reject dfd.reject(); } // Return the dimensions if the image loads return dfd.then(function() { // Return the dimensions as an object return { width: this.width, height: this.height }; }); }; // Sample usage getBackgroundImageSize(jQuery('#mydiv')) .then(function(size) { // Success - log the dimensions console.log('Image size is: ', size); }) .fail(function() { // Error - log failure message console.log('Failed to determine image size'); });
Das obige ist der detaillierte Inhalt vonWie bestimme ich die Hintergrundbildabmessungen eines Divs mit jQuery?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Die Auswahl von Flexbox oder Grid hängt von den Layoutanforderungen ab: 1) Flexbox ist für eindimensionale Layouts wie die Navigationsleiste geeignet. 2) Das Gitter eignet sich für zweidimensionale Layouts wie Zeitschriftenlayouts. Die beiden können im Projekt verwendet werden, um den Layout -Effekt zu verbessern.

Der beste Weg, um CSS -Dateien einzubeziehen, besteht darin, Tags zu verwenden, um externe CSS -Dateien in den HTML -Teil einzuführen. 1. Verwenden Sie Tags, um externe CSS -Dateien einzuführen, wie z. 2. Für kleine Anpassungen können Inline -CSS verwendet werden, sollten jedoch mit Vorsicht verwendet werden. 3. Große Projekte können CSS -Präprozessoren wie SASS oder weniger verwenden, um andere CSS -Dateien über @import zu importieren. 4. Für die Leistung sollten CSS -Dateien zusammengeführt und CDN verwendet und mit Tools wie CSSNano komprimiert werden.

Ja, youShouldlearnbothflexBoxandgrid.1) FlexBoxiSidealfore-dimensional, flexibelayoutslikenAvigationMenus.2) GridexcelStwo-dimensional, komplexDesignsuchasmagazinelayouts.3) Kombininierungs-Botenhances-Flexible-und-und -Anteilungskraft, und -forsfossivität,

Wie sieht es aus, Ihren eigenen Code neu zu gestalten? John Rhea nimmt eine alte CSS -Animation auseinander, die er geschrieben hat, und geht durch den Denkprozess der Optimierung.

CsSanimationsarenotinherenthardbutRequirePractICEANDUnDing-fordertofcsPropertiesandTimingfunktionen.1) StartwithsimpleanimationslikescalingabuttononoversKeyFrames.2) useaSingFunctionslikecubic-BezierForteffects, SuchasabouNects, SuchasabouNects,, zu

@KeyFramesispopulardUeToitSverSatility und PowerIncreatingsmoothcsSanimations.KectrickSinclude: 1) DefiningsmoothTransitionSbetTates, 2) AnimatingMultipleProperTiesimultan, 3) mit VendorprefixesforBrowserCompatible, 4) Kombinieren, 4) Kombinieren, 4) Kombinieren, 4) Kombinieren, 4) Kombinieren

CSSCOUSTERSSARUSTOMANAGEAUTOMATICNUMBERINGINWEBDEsigns.1) Sie konzipieren SieForsofcontents, ListItems und CustomNumbering.2) AdvanceduSesincnednumberingSystem.3) CHEFORDIGESINCLUDSERCOMPATIBILIBLEISE.4) CreativeuSinvolvecustInance

Die Verwendung von Scroll -Schatten, insbesondere für mobile Geräte, ist ein subtiles Stück UX, das Chris zuvor abgedeckt hat. Geoff deckte einen neueren Ansatz ab, der die Immobilie der Animationszeit verwendet. Hier ist ein anderer Weg.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

Dreamweaver CS6
Visuelle Webentwicklungstools
