Показать сообщение отдельно
  #10 (permalink)  
Старый 24.11.2014, 07:43
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

По первому вопросу, конечно же код не должен повторятся, оберни в функцию и используй когда нужно
myFnc = fucntion(){
        var div  = document.getElementById("nav");
        if (window.innerWidth > 320) {
            div.style.width = parent.style.width + "px"; // мои каракули
        }
}
window.onload = myFnc();
window.onresize = myFnc();

Вроде можно даже так "window.onload = window.onresize = myFnc();", не знаю не проверял.

По второму можно дописать
if (window.innerWidth <= 320) {
        div.style.width = window.innerWidth + "px"; 
 }
 else {
        div.removeAttribute('style');
 }

Этот способ убирает инлайн-атрибут style, снимая стили навешанные через js и написаные прямо в html
Ответить с цитированием