Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / OnMouseOut "перебивает" OnClick / 9 сообщений из 9, страница 1 из 1
21.07.2009, 18:03
    #36101502
NeoNazgul
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
Суть задачи:
При наведении курсора на область-она выделяется, при снятии курсора - выделение снимается. (Реализовано)
Нужно чтоб при клике - область выделялась иначе и не срабатывал onmouseout.
Собственно вопрос "Как?".

Заранее благодарю!
...
Рейтинг: 0 / 0
21.07.2009, 20:26
    #36101740
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
Что такое "выделение"? Селект или фокус? Маленький примерчик в несколько строчек можно? Что такое "область" - тоже не понятно. Див что-ли?
...
Рейтинг: 0 / 0
21.07.2009, 20:27
    #36101741
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
И что означает при снятии курсора ?
...
Рейтинг: 0 / 0
22.07.2009, 05:47
    #36102023
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
примерно так:
Код: plaintext
1.
2.
3.
4.
<div style="width:100px; height:100px; background:red;"
	 onmouseover="if (!this.clicked) this.style.background='yellow';"
	 onclick="if (!this.clicked) {this.clicked = 1; this.style.background='blue'; } else {this.clicked = 0; this.style.background='yellow';}"
	 onmouseout="if (!this.clicked) this.style.background='red';"
	 ></div>
...
Рейтинг: 0 / 0
22.07.2009, 09:15
    #36102131
OnMouseOut "перебивает" OnClick
NeoNazgulСуть задачи:
При наведении курсора на область-она выделяется, при снятии курсора - выделение снимается. (Реализовано)
Нужно чтоб при клике - область выделялась иначе и не срабатывал onmouseout.
Собственно вопрос "Как?".

Заранее благодарю!
ИМХО чисто программистская задачка: установить признак, что на области был клик и при onmouseout посмотреть был-ли клик.
...
Рейтинг: 0 / 0
22.07.2009, 15:46
    #36103309
NeoNazgul
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
По сути, область о которой я говорил является одной из частей "дерева" типо проводника.
В общем по коду думаю более понятно будет:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
While NOT Tmp.EOF
         Counterr = Counterr +  1 
	If Tmp( "PrChild" ) = "N" Then
	For i =  0  To level
	Response.Write( "    " )
	Next
	Response.Write( "<img src=""img/fold1.gif"">  <b id='" & Parent & "_" & Counterr & "' class='tvd2' style='font-weight: normal;' onMouseOver='JavaScript:SetStyle1();' onMouseOut='JavaScript:SetStyle1();' onClick=""ChangeTerrView1( " & Tmp( "vrn" ) & ", '" & Tmp( "name" ) & "', '" & Tmp( "kodim"&level ) & "', '" & Request( "mode" ) & "', '" & Request( "categ_code" ) & "' )"">" & Tmp( "name" ) & " N</b><br>" & vbCRLF )
	Else
	 For i =  0  To level
	 Response.Write( "    " )
	 Next
	 Response.Write( "<img src=""img/fold1.gif"">  <b id='" & Parent & "_" & Counterr & "' class='tvd2' style='font-weight: bold border: 10;' onMouseOver='JavaScript:SetStyle1();' onMouseOut='JavaScript:SetStyle1();' onClick=""ChangeTerrView1( " & Tmp( "vrn" ) & ", '" & Tmp( "name" ) & "', '" & Tmp( "kodim"&level ) & "', '" & Request( "mode" ) & "', '" & Request( "categ_code" ) & "' )"">" & Tmp( "name" ) & " Y</b><br><div id='" & Parent & "_" & Counterr & "i' style='display:none;'>" & vbCRLF )
	 Call ShowTerrTree( Tmp( "kodim"&level ), level +  1 , Parent & "_" & Counterr )
	 Response.Write( "</div>" & vbCRLF )
	End If
	Tmp.MoveNext
	WEND
И соответственно отдельно в .js идут сами выполняемые по OnMouseOver и OnMuseOut скрипты:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
function SetStyle1() 
{
	 if( event.srcElement.id.substring(  0 ,  3  ) == "map" ) 
	 {
		//if( event.type == "click" )
		//{ document.all( event.srcElement.id ).className = "head3"; }
	   
	    if( event.type == "mouseover" ) 
		{ document.all( event.srcElement.id ).className = "tvd2_over"; } 
		else 
		 { document.all( event.srcElement.id ).className = "tvd2"; }
	 }
}

function ChangeTerrView1( vrn, Terrname, kodim, Mode, categ_code ) {
	try {
//		document.all( "vrnTerr" ).innerText = vrn;
//		document.all( "nameTerr" ).innerText = Terrname;
		
		//document.all( "nameFRAME" ).src="Frame_OV.csp?vrnTerr="+vrn+"&nameTerr="+Terrname+"&mode="+Mode+"&categ_code="+categ_code;
		if( event.type == "click" )
		{ document.all( event.srcElement.id ).className = "head3"; }
		
		if( document.all( event.srcElement.id + "i" ).style.display == "" ) {
			document.all( event.srcElement.id + "i" ).style.display = "none";
		} else {
			document.all( event.srcElement.id + "i" ).style.display = "";
		}
	} catch( e ) {
		//alert( event.srcElement.id );
		//alert( e.message );
		//return - 1 ;
	}
}
...
Рейтинг: 0 / 0
22.07.2009, 15:49
    #36103321
NeoNazgul
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
illion,
Спасибо, сейчас попробую прописать таким образом.

Но в любом случае далее встает следующая проблема: по клику (и соотв. выделении) на другую область, выделение с текущей должно сниматься. Как сделать?
...
Рейтинг: 0 / 0
23.07.2009, 13:46
    #36105463
NeoNazgul
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
Up
...
Рейтинг: 0 / 0
31.07.2009, 01:50
    #36119233
eualexey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OnMouseOut "перебивает" OnClick
Перед кликом установить дефолтовый background для всех элементов типа
выбираемого, т.е. если это таблица то на onclick навесить
1) сделать все строки белые
2) изменить background выделенной строки.
Как то так.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / OnMouseOut "перебивает" OnClick / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]