Wie bekomme ich die obere linke Ecke des Tags ohne JQuery?Wie bekomme ich die obere linke Ecke des Tags ohne JQuery?
Antwort
element.offsetLeft
und element.offsetTop
finden Sie die Top-let Ecke relevant an ihre Mutter
function top(el) {
var topVal = el.offsetTop;
if (el.parentNode) topVal+= top(el.parentNode);
return topVal;
}
function left(el) {
var leftVal = el.offsetLeft;
if (el.parentNode) leftVal+= left(el.parentNode);
return leftVal;
}
es rekursiv Aufruf erhalten, bis Sie die Documment getroffen (document.parentNode null ist und endet rescursion) erhalten Sie es in Bezug auf das gesamte Dokument. Seien Sie vorsichtig, dass dies nicht mit iframe
oder irgendetwas anderem kompatibel ist, das sein eigenes Dokument hat.
[Bearbeiten]
Die obige rekursive Funktion ist viel zu naiv und funktioniert nur auf sehr einfache Seiten. Sie können stattdessen über offsetParent iterieren, aber das verursacht auch einige Probleme.
Diese Lösung scheint vernünftig zu arbeiten, aber ich havnt es gründlich mich
getestet'offsetLeft' /' offsetTop' sind relativ zum 'offsetParent', nicht 'parentNode'. – bobince
Ah Ich vermute OffsetParent und ParentNode sind das gleiche. Lass mich darüber nachdenken. – Raynos
quirksmode writup für die Position eines Elements: http://www.quirksmode.org/js/findpos.html – subhaze
Um die Position relativ zu seinem zu erhalten, verwenden:
function getRelativePos(el) {
var left=el.offsetX;
var top=el.offsetY;
return {top:top,left:left};
}
Und jetzt können Sie benutze es so, alarmiere die linke pos:
var myElement=document.getElementById('myel');
alert(getRelativePos(myElement).left);
Wenn Sie die absolute Position möchten, verwenden Sie diese:
function getAbsPos(el) {
var rect=el.getBoundingClientRect();
return {top:rect.top,left:rect.left};
}
Sie es genauso wie die getRelativePos
Funktion nutzen zu können.
- 1. Finden Sie die obere linke Ecke in einem Quartz-Plugin
- 2. iPhone: Wie erhält man die obere linke Ecke einer UIView?
- 3. MKMapView corner funktioniert nur für die obere linke Ecke
- 4. UIImageView als Callouts linksCalloutAccessoryView verschiebt automatisch die obere linke Ecke
- 5. CSS-Formatierung - Text in die obere linke Ecke setzen
- 6. Wie bekomme ich die Ecke Textbox mit jquery ohne Bilder
- 7. Ändern der Hintergrundfarbe von WPF DataGrid Obere linke Ecke Header
- 8. Obere linke und rechte Ecke in Javafx/CSS abgerundet
- 9. Wie bekomme ich ein css-Dreieck, das die obere rechte Ecke kreuzt?
- 10. Wie bekomme ich die obere rechte Ecke eines Bildes in Flex
- 11. Wie bekomme ich die Position des klickenden Tags?
- 12. Wie füge ich das Bild in die rechte obere Ecke des Panel Headers mit flex?
- 13. Wie erhalte ich die obere linke Bildschirmposition des Editor-Fensters von Visual Studio 2008?
- 14. iOS ImageView auf obere Ecke ausrichten
- 15. Wie bekomme ich die ID eines Anchor-Tags in jQuery?
- 16. Position absolut, obere rechte Ecke (Größenanpassung)
- 17. Runde nur obere Ecke von cardview
- 18. CSS für die obere rechte Ecke der Seite
- 19. werden obere und linke Koordinaten gedreht
- 20. Obere und linke Menüleiste odoo 8
- 21. Wie bekomme ich die beliebtesten Tags?
- 22. Wie setze ich WPF-Anwendungsfensterstartuplocation mit xaml in die obere rechte Ecke?
- 23. Wie füge ich Bild an die obere rechte Ecke mit CSS an?
- 24. Wie bekomme ich die linke äußere Verbindung in Linq?
- 25. Wie verankere ich die obere rechte Ecke von Legend in der oberen rechten Ecke von Axes in Matplotlib?
- 26. Wie bekomme ich den inneren HTML-Code, einschließlich des Tags, mit jQuery?
- 27. Wie bekomme ich Instagram Bild von Tags ohne Authentifizierung?
- 28. In jQuery, wie bekomme ich die untere Position des Browsers?
- 29. Wie bekomme ich die ID des Elements
- 30. Wie bekomme ich die Stile eines Body-Tags
Relativ zu was? Eltern-Tag? Dokument? – ThiefMaster
'zurück [0,0]'? –
@Pekka: Ich bin mir nicht sicher, ob er über das '' -Tag spricht, und nicht über ein generisches Element, das in HTML verwendet wird, aber Sie haben Recht mit '[0,0]' für ''. – jwueller