Seit jQuery 3 .outerHeight()
gibt undefined
statt null
zurück, wenn es auf einem nicht vorhandenen Element aufgerufen wird. Dies führt zu Problemen bei der Addition von Höhen von Elementen, die nicht existieren, weil number
+ undefined
jetzt NaN
ergibt. Während vor jQuery 3 number
+ null
würde number
zurückgeben.jQuery outerHeight() gibt undefined statt null zurück
var lorem = $('#div1').outerHeight() + $('#div2').outerHeight();
Returns NaN
wenn zum Beispiel #div2
existiert nicht.
Mögliche Lösung:
undef2null = function(myvar) {
if (myvar === undefined) {return null;}
else {return myvar;}
}
oben Code wiederum würde in:
var lorem = undef2null($('#div1').outerHeight()) + undef2null($('#div2').outerHeight());
Gibt es eine elegantere Lösung als das?
JavaScript nicht über Zahlen. –
@ AluanHaddad LoL. Was? Okay, betrachte es als "Nummer". –
@PraveenKumar, ich denke, Aluan wollte sagen: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures, aber in diesem Fall ist es nicht so wichtig ... :) Oh, richtig Terminologiepolizei ... immer wach. :) – sinisake