firefox offsetWidth ничего не сообщает.
Я пытаюсь сделать динамическое изменение размера с помощью JavaScript. Для части этого мне нужно сообщить текущий размер контейнера. Я написал функцию для этого (ниже), и она отлично работает в Chrome... однако в Firefox ширина не сообщается. Я прочитал о методе offsetWidth, и теоретически он должен работать в Firefox.
function currentBoxW() {
return document.getElementById("wrapper").offsetWidth;
}
Все это отчеты "NaN".
На этой странице есть еще кое-что в этой функции, но весь дополнительный код был закомментирован для тестирования... это фактическая строка, которая составляет отчет.
Я что-то пропустил или есть более умный способ сообщить ширину, используя JS и DOM? Есть ли другой способ получить ширину div?
Благодарю.
1 ответ
У вас могут быть две проблемы:
- Убедитесь, что у вас есть explicity, задайте ширину элемента (оболочки) с помощью CSS
- Убедитесь, что код javascript выполняется после того, как документ готов.
window.onload()
или что-то подобное, если вы используете какие-либо другие библиотеки JavaScript
Если вы можете использовать вместо этого jquery, вы можете легко получить его с помощью
$(document).ready(function(){
function currentBoxW() {
return $('#wrapper').width();
or
return $('#wrapper').innerWidth(); //depending on the requirement.
}
});