Avatar billede moroax Nybegynder
29. februar 2004 - 16:39 Der er 8 kommentarer og
1 løsning

onClick disable onMouseOut

Jeg har bygget dette lille script,
som styrer farver i en menu,
PROBLEMET er så at når der klikkes i et menupuntk skal onMouseOut slås fra
** KUN I DET ENE MENUPUNKT **
DVS, det aktive menupunkt skal holde "onMouseOver" effekten !!


Mit script:
<script language="JavaScript1.2">
// var testIT = "NEJ"

function vCLICK(denne) {
testIT = "JA";
//    alert ('Her '+testIT);
denne.style.color = ('#<%= rensCOL(loCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lobgCOL) %>');
}
function vOVER(denne) {
denne.style.cursor= ('hand');
denne.style.color = ('#<%= rensCOL(loCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lobgCOL) %>');
}
function vOUT(denne) {
denne.style.color = ('#<%= rensCOL(lCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lbgCOL) %>');
// alert ('Her '+testIT);
}

</script>

<td colspan='2' class='link' id='" & vID & "' onMouseOver=""vOVER(this)"" onMouseOut=""vOUT(this)"" onClick=""vCLICK(this)"">

// MoRoax...
Avatar billede roenving Novice
29. februar 2004 - 16:48 #1
<script language="JavaScript1.2">
var testIT = new Array();

function vCLICK(denne) {
testIT[denne.id] = "JA";
//    alert ('Her '+testIT);
denne.style.color = ('#<%= rensCOL(loCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lobgCOL) %>');
}
function vOVER(denne) {
denne.style.cursor = 'pointer';
denne.style.color = '#<%= rensCOL(loCOL) %>';
denne.style.backgroundColor = '#<%= rensCOL(lobgCOL) %>';
}
function vOUT(denne) {
if(testIT[denne.id]&&testIT[denne.id] == "JA")return;
denne.style.color = ('#<%= rensCOL(lCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lbgCOL) %>');
// alert ('Her '+testIT);
}

</script>

<td colspan='2' class='link' id='" & vID & "' onMouseOver=""vOVER(this)"" onMouseOut=""vOUT(this)"" onClick=""vCLICK(this)"">
Avatar billede moroax Nybegynder
29. februar 2004 - 16:56 #2
Du ER altså hurtig på tasterne,
kan du få denne lille fejl med ?:
når der klikkes på et ANDET menupunkt, skal tideligere clicket menupunkter ophæves og være "normale" igen (som onMouseOut)

Så er den der !!..

// MoRoax...
Avatar billede roenving Novice
29. februar 2004 - 17:36 #3
Sådan ?-)

<script type="text/javascript" language="JavaScript1.2">
var act = "";

function vCLICK(denne) {
if(act!=""){
var a=act;
act=denne.id;
vOUT(document.getElementById(a));}
denne.style.color = ('#<%= rensCOL(loCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lobgCOL) %>');
}
function vOVER(denne) {
denne.style.cursor = 'pointer';
denne.style.color = '#<%= rensCOL(loCOL) %>';
denne.style.backgroundColor = '#<%= rensCOL(lobgCOL) %>';
}
function vOUT(denne) {
if(act==denne.id)return;
denne.style.color = ('#<%= rensCOL(lCOL) %>');
denne.style.backgroundColor = ('#<%= rensCOL(lbgCOL) %>');
// alert ('Her '+testIT);
}

</script>
Avatar billede moroax Nybegynder
29. februar 2004 - 17:42 #4
Øhhh..
ikke helt,
Nu GLEMMER den det menupunkt der lige er trykket på,
Een gang til forfra:

Når der trykkes på et menupunkt skal OnMouseOut disables på det ene punkt.
når der så køres over andre menupunkter skal de virke "normalt" over/out
Når der trykkes på menupunkt nr. 2, skal OnMouseOut disables på det ene punkt.
+ det punkt der stadig er highlightet fra før, skal "Slippes fri", dvs. have en out farve, og igen virke som normalt !!..

Forstår du nu hvad jeg mener ??..
Avatar billede roenving Novice
29. februar 2004 - 18:00 #5
Ja, jeg havde lige overset den effekt, som de havde på hinanden, men sådan inklusive test-miljØ:

<script type="text/javascript" language="JavaScript1.2">
var act = "";

function vCLICK(denne) {
if(act!=""){
var a=document.getElementById(act);
act=denne.id;
vOUT(a);}
act=denne.id;
denne.style.color = ('#f00');
denne.style.backgroundColor = ('#f0f');
}
function vOVER(denne) {
if(act!=denne.id){
denne.style.cursor = 'pointer';
denne.style.color = '#fff';
denne.style.backgroundColor = '#000';}
}
function vOUT(denne) {
if(act!=denne.id){
denne.style.color = '#000';
denne.style.backgroundColor = '#fff';}
}

</script>

<div id="div1" onmouseover="vOVER(this)" onmouseout="vOUT(this)" onclick="vCLICK(this)">1 ----------------------</div>
<div id="div2" onmouseover="vOVER(this)" onmouseout="vOUT(this)" onclick="vCLICK(this)">2 ----------------------</div>
<div id="div3" onmouseover="vOVER(this)" onmouseout="vOUT(this)" onclick="vCLICK(this)">3 ----------------------</div>
<div id="div4" onmouseover="vOVER(this)" onmouseout="vOUT(this)" onclick="vCLICK(this)">4 ----------------------</div>
<div id="div5" onmouseover="vOVER(this)" onmouseout="vOUT(this)" onclick="vCLICK(this)">5 ----------------------</div>
Avatar billede moroax Nybegynder
29. februar 2004 - 21:39 #6
KANON - Den er der....

Smid et svar !!..

// MoRoax...
Avatar billede roenving Novice
29. februar 2004 - 21:45 #7
Velbekomme '-)
Avatar billede roenving Novice
29. februar 2004 - 23:44 #8
-- og tak for points ;~}
Avatar billede moroax Nybegynder
29. februar 2004 - 23:49 #9
Selv tak, de var fortjænt... :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester