javascript getelementbyid ... как получить переменную html - PullRequest
1 голос
/ 03 февраля 2011
function allowscroll()
{
if (screen.width<1200){document.getElementById('html').style.cssText='overflow-x: scroll !important;';};
}

<body onLoad="allowscroll();">

Привет, приведенный выше код работает для любого элемента, например, добавляя html для «обертки», но как можно редактировать CSS, примененный к html?В основном, из-за переполнения: скрытый, не наследуемый в ie7 - который вызывает большой пустой правый край и горизонтальную полосу прокрутки (только в ie7, то есть 8 совместимости), я установил css на

html {overflow-x:hidden;}

, это единственныйспособ исправить это, не теряя необходимой функциональности, например, переполненной графики visibilty.

, и это все хорошо, но для более низких разрешений экрана нужна горизонтальная прокрутка, чтобы увидеть всю страницу, поэтомупытаясь восстановить горизонтальную полосу прокрутки для этих пользователей - и восстановить большое правое поле для любого, кто оказывается, например ie7 1024 на 768 - я могу с этим смириться (если у кого-то не будет решения superdupa).

document.getElementById('html').style.cssText='overflow-x: scroll !important;';

Таким образом, приведенный выше код работает для редактирования CSS любого элемента, но не CSS HTML.

Я также пробовал:

function allowscroll()
{
if (screen.width<1200){document.getElementByName('html').style.cssText='overflow-x: scroll !important;';};
}

и

function allowscroll()
{
if (screen.width<1200){window.style.cssText='overflow-x: scroll !important;';};
}

Я был бы очень признателен за любую помощь, - если она помогает увидеть решение, ссылка, по которой это применимо: дизайн восхищения , bа также, как вынуть:

html {overflow-x:hidden;}

из css при более низких разрешениях экрана ...

большое спасибо

будет

Ответы [ 3 ]

2 голосов
/ 03 февраля 2011

Просто используйте documentElement:

document.documentElement

Имеется полная поддержка браузера .

2 голосов
/ 03 февраля 2011

Существует множество способов получить элемент html:

document.documentElement
document.getElementsByTagName('html')[0]
document.body.parentNode

Но, честно говоря, должен быть лучший способ.Сейчас у меня нет времени, чтобы отследить, что именно здесь произошло, но из того, что я могу сказать , добавив position:relative к любым нуждам, которые могут помочь переполнению.

2 голосов
/ 03 февраля 2011

Попробуйте document.getElementsByTagName("html")[0]

Примечание. Я только что отредактировал ответ, поскольку getElementsByTagName возвращает массив. Вы хотите первый элемент в этом массиве.

...