Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.138.69.96] |
|
Страницы: (3) [1] 2 3 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Проблема в следущем:
Есть тэг ДИВ, мне надо чтобы он был полупрозрачным (те я использую filter: alpha(opacity=40);). Но загвоздка вот в чём: полупрозрачным он должен становится только при нажатии крысой на этот тэг, а onMouseDown работает только если у ДИВА нет "filter...", те как только я вставляю в описание ДИВа "фильтр..." онМаусДаун сразу перестаёт обрабатываться. Пробывал сначала делать opacity=100 - не работает, пробывал делать z-index (мне кажется чёто с этим должно быть связано) - тоже ноль имоций... ПОМОГИТЕ!!!! |
Сообщ.
#2
,
|
|
|
z-index отвечает за позиционирование слоев (то есть, за ось Z). Странно, что onmousedown не работает. Ты используешь DOM? А другие события использовать пробовал (mouseclick, например или mouseover)?
|
Сообщ.
#3
,
|
|
|
нельзя клик, тк при онмаусап ДИВ должен опять стать непрозрачным....
|
Сообщ.
#4
,
|
|
|
Я имелл ввиду, работает ли твой код вообще. Неужели дело именно в событии onmousedown? Протестируй так, чтобы он становился прозрачным при onmouseover, а видимым при onmouseout. Работает?
|
Сообщ.
#5
,
|
|
|
<img...> работает, с дивом не пробовал... ща попробую....
|
Сообщ.
#6
,
|
|
|
а можно ли в яваскрипте создать фильтр "налету"?, те в описании тэга фильтра нет, а когда надо он создаётся... и так же его убить?
|
Сообщ.
#7
,
|
|
|
Вот поэтому я и спрашивал про DOM. Фильтр у тебя задается в CSS, ведь так? Тогда div'у присваиваем аттрибут id:
<div id="the_div" onmousedown="filter_hi()" onmouseup="filter_lo()">...</div> А ЯваСкрипт выглядит так: function filter_hi() { document.getElementById("the_div").style.filter = "alpha(opacity=40)" } function filter_lo() { document.getElementById("the_div").style.filter = "alpha(opacity=0)" } |
Сообщ.
#8
,
|
|
|
я проверил с ДИВом - всё работеат, хотя я делал не много по другому(но смысл тот же). Но мне надо именно онМаусДаун!!!
а как насчёт фильтра "налету"? |
Сообщ.
#9
,
|
|
|
Администраторам форума: черт бы побрал эту подсветку По-прежнему портит код!
seelts, ты меня немножко не понял. Чтобы было совсем понятно, получай пример такого дива, как тебе нужен (надеюсь, разберешься что к чему). Смотри прикрепленный файл. Прикреплённый файлdiv_hilite.zip (0.55 Кбайт, скачиваний: 150) |
Сообщ.
#10
,
|
|
|
во! то что мне надо!!! а есть способ убить фильтр через яваскрипт? те после того как первый раз произошёл маусдаун у дива появляется фильтр и он остаётся навсегда, а можно так чтоб после маусап не значение изменялось а весь фильтр удалялся?...
Добавлено в : кстати необязательно делать id можно onMouseDown="filter_hi(this);" и в самой функции уже работать с параметром... |
Сообщ.
#11
,
|
|
|
"Убить" фильтр нельзя. Можно сделать так:
document.getElementById("the_div").style.filter = "" То есть "стереть". Про ID: просто я предпочитаю DOM. |
Сообщ.
#12
,
|
|
|
Цитата Про ID: просто я предпочитаю DOM. this - это тоже DOM! |
Сообщ.
#13
,
|
|
|
Цитата this - это тоже DOM! Не обязательно. this работает и без поддержки DOM. this - всего лишь указатель на текущий объект. Слишком многое зависит от ситуации. В данном случае ты абсолютно прав . |
Сообщ.
#14
,
|
|
|
Цитата Trustmaster @ 22.07.04, 10:34 "Убить" фильтр нельзя. Можно сделать так:... можно: .style.removeAttribute("filter"); спасибо всем у меня получилось, НО: (между маусдаун и маусап обрабатывается маусмув)раньше маусмув обрабатывался замечательно, а тепер (когда есть прозрачность) он обрабатывается только когда мышь у границ ДИВа.... чё за беда? Добавлено в : я не понимаю разницу между CSS и DOM объясните пожалуйста |
Сообщ.
#15
,
|
|
|
Разницы между CSS и DOM нет. DOM - это не стили, а "Dynamic Object Model". Это особая система классификации HTML (XML, XHTML и не только) в виде "дерева" объектов. К каждому объекту можно получить доступ: 1) Через тэг, 2) Через другой объект, 3) Через уникальный идентификатор. Применяется в основном для создания DHTML-содержимого.
А разница в том, что некоторые старые браузеры поддерживают CSS, но не поддерживают DOM. Насчет беды с МаусМувом: скорее всего у тебя объекты перекрывают друг друга, и mousemove срабатывает там, где сам div ничем не перекрыт. |