ich gerade bemerkt haben, dass, wenn ich geben ein benutzerdefiniertes Attribut zu einem HTML-Element, zum Beispiel:benutzerdefinierten Attribut funktioniert nur mit element.getAttribute ("attribute"), aber nicht "element.attribute"
<input type="button" id="my_button" custom_attr="custom_attr_text" value="value_text" />
ich kann es wie folgt dann abrufen:
document.getElementById("my_button").getAttribute("custom_attr");
und es wird "custom_attr_text"
zurück, aber wenn ich es tue
document.getElementById("my_button").custom_attr;
dann gibt es undefined
zurück!
Ich bemerkte auch, dass mit einem eingebauten Attribut (zum Beispiel value
oder id
) beide der oben genannten funktioniert gut! Könnte jemand bitte erklären, warum das passiert?
Es ist ein littlebit jQuery-spezifische, aber sehen Sie das Duplikat von [.prop() vs .attr()] (http://stackoverflow.com/questions/5874652/prop-vs-attr). Wenn Sie eine nur-plain-js Erklärung möchten, finden Sie unter http://javascript.info/tutorial/attributes-and-custom-properties – Bergi