22.01.2010, 20:48
|
Новичок на форуме
|
|
Регистрация: 20.11.2009
Сообщений: 5
|
|
Затмение страницы
Подскажите, пожалуйста, такую штуку: мне надо сделать чтобы при загрузке страницы, или нажатии на ссылку страница затемнялась, при этом меню становилось бы недоступным, а сверху этого появлялся div с нужным текстом. Как можно реализовать подобный функционал?
Сделал таким способом, но оно не корректно работает в IE. Справа получается белая полоса.
<html>
<head>
<script src="jquery.js" type="text/javascript"></script>
<script>
function showDiv() {
$("#back").show();
$("#back").animate({opacity: ".5"}, 0, function(){$(this).show()});
$("#some").show();
$("#some").animate({opacity: "1", height: "+=200", width: "+=450"}, "slow")
}
</script>
<style>
</style>
</head>
<body>
<div><p>
<div><A href="javascript:void(0);" onclick="showDiv();"> link 1 </a> | <a href="javascript:void(0);">link 2</a> | <a href="#3">link 3</a> </div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam adipiscing vulputate urna luctus consectetur. Maecenas urna velit, placerat in lacinia accumsan, placerat non nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Cras vestibulum massa eu nisl ultricies non fermentum quam volutpat. Aenean vestibulum eleifend condimentum. Proin nec tortor orci, quis congue nulla. Vivamus bibendum dictum ultrices. Aenean et ullamcorper tortor. In sapien felis, dictum vitae egestas eget, fermentum eget sapien. Nunc lacinia volutpat elementum. Mauris arcu erat, pharetra nec dictum sed, ornare id leo. Suspendisse potenti. Sed risus nunc, commodo at auctor elementum, faucibus at ipsum. Nam urna lorem, commodo a malesuada sit amet, tincidunt a nunc. Cras nulla orci, pellentesque in eleifend et, sagittis a dui. Maecenas vel urna nec nunc congue scelerisque in eget urna. Phasellus vitae sapien a nisl auctor pulvinar sed eu tellus. Integer porta venenatis congue.
</p>
<p>
Duis id quam sem. Proin mollis ullamcorper ullamcorper. Phasellus commodo dolor nec magna rhoncus vel semper tortor varius. Suspendisse sed tempus diam. Etiam nec nisl elit. Fusce turpis neque, molestie a consectetur nec, porta eget magna. Proin a pretium ante. Duis vestibulum diam nisi, at lobortis velit. Fusce eu egestas quam. Donec vulputate posuere dolor, quis dignissim elit malesuada sed. Vivamus imperdiet consectetur nulla, mattis mollis quam congue porta. Nulla pellentesque pretium magna ut auctor. Aliquam eu enim leo. Vestibulum libero ipsum, sagittis id dictum ac, porttitor a nisi.
</p>
<p>
Ut imperdiet rhoncus velit, id vulputate nulla gravida vel. Phasellus vitae luctus tortor. Nulla eu justo non tortor varius tincidunt. Suspendisse volutpat ipsum ac nulla aliquam sed faucibus orci tempor. Morbi sit amet aliquam neque. Fusce blandit, tellus vel auctor venenatis, neque nisl elementum ante, vitae sollicitudin odio est non erat. Sed tellus libero, condimentum id ultrices commodo, convallis vehicula arcu. Proin nisl sapien, auctor non lacinia vitae, faucibus non arcu. Nam pharetra, tortor vel eleifend ullamcorper, augue velit gravida felis, sed hendrerit ipsum nunc a purus. Morbi tempor purus vitae tortor egestas viverra. Phasellus tellus felis, ultrices at vehicula in, placerat et tellus.
</p>
</div>
<div id="back" style="display:none; width: 100%;height: 100%; position: absolute; top: 0; left: 0; display: none; z-index:5; background-color:#000;"></div>
<div id="some" style="display:none; width: 1px; position: absolute; top: 30px; left: 30%; height: 1px; background-color:#ccc; border: 1px solid: #999;z-index:99; padding: 10px; "> some text </div>
</body>
</html>
|
|
23.01.2010, 01:02
|
|
Пионэр
|
|
Регистрация: 16.11.2009
Сообщений: 1,322
|
|
Вот, представьте себе ситуацию: Вы пришли в магазин, продуктовый, купить себе вкусной колбасы. А там очередь. Ну, ладно, очередь — вещь почти привычная, пробираетесь медленно к кассе, разглядываете прилавок, и вдруг — ОП! — Вам на лицо накидывают черную тряпку с прозрачностью 50%. И рот кляпом закрывают, чтобы Вы не дай {{имя божества}} не попросили ничего у продавщицы, пока она не полностью к этому готова.
Это я к чему — если у Вас есть потребность делать шилд при загрузке, значит, у Вас все очень плохо или с событиями, или с заказчиком.
|
|
25.01.2010, 14:14
|
Новичок на форуме
|
|
Регистрация: 20.11.2009
Сообщений: 5
|
|
Да нет. Там должна быть форма согласия с правилами. Если пользователь соглашается, он попадает дальше, если нет, естественно с этой страницы уходит.
Но надо, чтобы до выбора им решения, страница была видна, но не доступны элементы формы и меню.
|
|
26.01.2010, 10:53
|
|
Пионэр
|
|
Регистрация: 16.11.2009
Сообщений: 1,322
|
|
Ну, дело в том, что юзер может получить доступ к полям даже если они чем-то перекрыты — табом или Shift-стрелками в опере. Их придется ставить в рид-онли явным образом.
А похожая на Вашу ситуация происходит иногда с плагинами jQuery когда ширина body не 100% (document.body.clientWidth возвращает не ширину страницы). Попробуйте вместо этого $(window).width(), может помочь.
|
|
26.01.2010, 12:56
|
Новичок на форуме
|
|
Регистрация: 20.11.2009
Сообщений: 5
|
|
Спасибо. Получилось.
|
|
26.01.2010, 19:20
|
|
Профессор
|
|
Регистрация: 03.04.2009
Сообщений: 1,263
|
|
subzey,
а у Гмейла плохо с событиями или с заказчиком?
|
|
26.01.2010, 21:18
|
|
Пионэр
|
|
Регистрация: 16.11.2009
Сообщений: 1,322
|
|
Гхм-м... А где там подобное?
|
|
27.01.2010, 13:52
|
|
Профессор
|
|
Регистрация: 03.04.2009
Сообщений: 1,263
|
|
Когда в гмыло заходишь, идет полоса загрузки. Зачем?
|
|
27.01.2010, 13:58
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
e1f,
таки не надо сравнивать веб-приложение с контентным сайтом.
|
|
27.01.2010, 14:22
|
|
Профессор
|
|
Регистрация: 03.04.2009
Сообщений: 1,263
|
|
Kolyaj, я и не сравниваю. Это исключительно к
Цитата:
|
Это я к чему — если у Вас есть потребность делать шилд при загрузке, значит, у Вас все очень плохо или с событиями, или с заказчиком.
|
|
|
|
|