Сохранить положение прокрутки в div (продолжение)
вообщем продолжение работы со скроллом
http://javascript.ru/forum/dom-windo...tki-v-div.html и http://javascript.ru/forum/misc/2645...o-skrolla.html две статьи с описание работы со скроллом (сохранить/установить и т.д.) склепаный скрипт все равно не сохраняет скролл, почему????? ппц какой-то =(
var wDelta = 100;
function scrollDoc(e) {
if (!e) e = event;
if (e.preventDefault) { e.preventDefault(); } else { e.returnValue = false; }
var __delta = e.wheelDelta || -e.detail;
__delta /= Math.abs(__delta);
document.getElementById('myscrollid').scrollLeft -= __delta * wDelta; // FF, Opera, IE
if (this.attachEvent) return false;
document.getElementById('myscrollid').scrollLeft -= __delta * wDelta; // Chrome
}
window.onload = function() {
var mydiv = document.getElementById('myscrollid');
if (mydiv.attachEvent) {
mydiv.attachEvent("onmousewheel", scrollDoc); // IE and Opera
} else {
mydiv.addEventListener("DOMMouseScroll", scrollDoc, false); // FF
mydiv.addEventListener("mousewheel", scrollDoc, false); // Chrome
}
}
+ в добавок отфонарный ДИВ на скролл по иксу <div id="myscrollid" style="position:absolute; left: 100px; width:500px; background:red; height:300px;overflow: auto;"> 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs v453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs </div> колесиком мышки крутит горизонтально в диве все оке норм а вот сохранять только еси вписать .body как в оригинале http://javascript.ru/forum/misc/2645...o-skrolla.html |
кирикала,
где код с проблемой? |
сохранение горизонтального скрола
кирикала, :(
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
#myscrollid {
position:absolute; left: 100px; width:500px; background:red; height:300px;overflow: auto;
}
</style>
<script>
window.addEventListener('DOMContentLoaded', function() {
var div = document.querySelector('#myscrollid');
var scroll = localStorage.getItem('scroll')||0;
div.scrollLeft = scroll;
function wheel(event) {
event.preventDefault();
var delta = 0;
if (event.wheelDelta) delta = event.wheelDelta / 120;
else if (event.detail) delta = -event.detail / 3;
div.scrollLeft += delta * 30;
}
div.addEventListener("mousewheel", wheel, false);
div.addEventListener("DOMMouseScroll", wheel, false)
div.addEventListener('scroll', function() {
localStorage.setItem('scroll', div.scrollLeft);
})
});
</script>
</head>
<body>
<div id="myscrollid" >
453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs
453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs v453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs 453tewfgsdfvsdvvsdsdvs
</div>
</body>
</html>
|
Что вы делаете? Прокрутка колесом чего угодно в браузерах реализована уже 100500 лет назад. В том числе в диве будет все крутиться и вертеться если он overflow:auto. Что, кстати и задалбывает когда указателю встречается много таких дивов: вместо скролла страницы он радостно начинает скроллить скрытый контент.
ТС, ты хотя бы год той статьи посмотри. Шесть лет уже прошло, по меркам компьютерной индустрии - 6000 лет. Если ты хочешь прикрутить себе модный респозибле скробар, так это тебе сперва надо его нарисовать. |
кроче хз копипастом в нотпад, открываю в хроме, не сохраняет всеравно скрол хз разберусь
код рабочий понятно спс народ |
кирикала,
не локально надо проверять, а с сервера |
| Часовой пояс GMT +3, время: 09:53. |