Questa piccola funzione è stata fatta copiando il codice presente in phpMyAdmin. Ho dovuto colore le righe delle tabelle, come il mouse è andato attraverso di essi e colorare anche quando l'utente fa clic su di essi.

In phpMyAdmin Javascript originale, in stile con i colori di sfondo delle celle sono in <td>. Inoltre, come tutte le cellule hanno lo stesso colore di sfondo, basta prendere il colore del primo <td> e applicare su tutta la linea.

Come il mio definizioni di stile in file. Css, ho dovuto cambiare il modo di farli. E come alcune colonne aveva i colori di sfondo e non altri, ho creato un array per memorizzare i valori originali. Così, quando l'utente sposta il mouse in un <tr> con questa funzione, i colori di sfondo definito nel file. Css vengono memorizzati, recuperati e quando il mouse lascia la riga.

Le prime due variabili sono i colori che appaiono quando il mouse è sopra la linea (cor_onmouseover) e quando si fa clic (cor_onmousedown). Per impostazione predefinita, sono rispettivamente un terreno verde di calce e una crema arancione. Come potete vedere, ci manjo nulla di nominare i colori esadecimali ;)

Di seguito è riportato il codice JavaScript:

JavaScript:
  1. cor_onmouseover = '# E7FFCE';
  2. = 'cor_onmousedown # FFCC99';
  3. coresOriginais = Array ();
  4. celula, linhaNumero, evento ) funzione destacarLinha (cellulare, linhaNumero, evento)
  5. (
  6. ; var celulas_filhas = null;
  7. / / Provare a ottenere il <tr> o esce se il browser non riesce a
  8. typeof ( document. getElementsByTagName ) != 'undefined' ) { if (typeof (getElementsByTagName document.referrer)! = 'undefined') (
  9. 'td' ) ; cell = celulas_filhas. getElementsByTagName ( 'td');
  10. ( typeof ( celula. cells ) != 'undefined' ) { Cellule) else if (typeof (cellula)! = 'Undefined') (
  11. cell = celulas_filhas. cellule;
  12. { ) Else (
  13. ; return false;
  14. )
  15. ; celulas_filhas_qtd var = celulas_filhas. lunghezza;
  16. / / Loop su tutti i <td> 's
  17. c = 0 ; c <celulas_filhas_qtd; c++ ) { for (c = 0, c <celulas_filhas_qtd c + +) (
  18. ; var corAtual = null;
  19. ; mescolato var = null;
  20. ; celulas_filhas elemento = [c];
  21. / / Ha a che fare questo perché quando se i CSS in un file esterno è
  22. / / In questo modo, che ottiene il colore
  23. / / IE 5 +;
  24. elemento. currentStyle ) { if (elemento. currentStyle) (
  25. 'backgroundColor' ] ; elemento = corAtual. currentStyle [ 'backgroundColor'];
  26. / / Firefox, Moz
  27. ( window. getComputedStyle ) { ) Else if (window. getComputedStyle) (
  28. ( elemento, "" ) elstyle var = finestra. getComputedStyle (elemento, "")
  29. 'background-color' ) ; = elstyle corAtual. getPropertyValue ( 'background-color');
  30. )
  31. / / Da RGB a esadecimale
  32. corAtual. indexOf ( "rgb" ) >= 0 ) { if (corAtual. indexOf ( "RGB")> = 0) (
  33. ( corAtual. indexOf ( '(' ) + 1 , rgbStr var = corAtual. slice (corAtual. indexOf ( '(') + 1,
  34. ')' ) ) ; corAtual. indexOf (')'));
  35. ( "," ) ; = rgbValues rgbStr var. split ( "");
  36. corAtual = "#";
  37. ; hexChars var = "0123456789ABCDEF";
  38. var i = 0 ; i < 3 ; i++ ) { for (var i = 0; i <3; i + +) (
  39. i ] . valueOf ( ) ; var v = rgbValues [i]. valueOf ();
  40. v/ 16 ) + hexChars. charAt ( v% 16 ) ; corAtual + hexChars = hexChars. charAt (v / 16) +. charAt (% v 16);
  41. )
  42. )
  43. cor_index = linhaNumero + "_" + c;
  44. evento == 'over' && corAtual. toLowerCase ( ) != cor_onmousedown. toLowerCase ( ) ) { if (event == 'over' & & corAtual. toLowerCase ()! = cor_onmousedown. toLowerCase ()) (
  45. = Cor_onmouseover mosse;
  46. = corAtual; coresOriginais [cor_index] = corAtual;
  47. ( evento == 'click' ) { ) Else if (event == 'click') (
  48. corAtual. toLowerCase ( ) == cor_onmousedown. toLowerCase ( ) ) { if (corAtual. toLowerCase () == cor_onmousedown. toLowerCase ()) (
  49. ; mescolato coresOriginais = [cor_index];
  50. { ) Else (
  51. = Cor_onmousedown mosse;
  52. )
  53. ( evento == 'out' && corAtual. toLowerCase ( ) != cor_onmousedown. toLowerCase ( ) ) { ) Else if (event == 'out' & & corAtual. ToLowerCase ()! = Cor_onmousedown. ToLowerCase ()) (
  54. ; mescolato coresOriginais = [cor_index];
  55. )
  56. corNova ) { if (mosse) (
  57. . style . backgroundColor = corNova; celulas_filhas [c]. stile. backgroundColor = mosse;
  58. )
  59. )
  60. ; return true;
  61. )

Per utilizzare la funzione, fare quanto segue:

HTML:
  1. onmouseout = "destacarLinha(this, 1, 'out');" onmousedown = "destacarLinha(this, 1, 'click');" > onmouseover <tr = "destacarLinha(this, 1,'over');" onmouseout = "destacarLinha(this, 1,'out');" onmousedown = "destacarLinha(this, 1,'click');">

Il primo argomento è il numero di riga nella tabella. E 'necessario conoscere la funzione di tornare ai colori originali. Turn it uno per uno, come le occorrenze di <tr> s.

Per qualsiasi domanda, commento :)

  • Congratulazioni! Grande script. Mi chiedo se non vi è alcuna restrizione sul suo utilizzo?
    Abbracciare + + abbraccio
  • inerte
    Ciao Paolo,

    Restrizioni di alcun tipo, qualsiasi licenza d'uso? Non più, può fare quello che vogliono con il codice:)
  • gabriel
    non poteva usare ...
    come ho messo questo codice in html e vedere l'operazione ... sorry .. 'm principiante
  • Marcelo Benevides
    Tipo! Codice Parabens great!
commenti del blog powered by Disqus

Português flagItaliano flagCoreano flagChinês (simplificado) flagEnglish flagAlemâo flagFrancês flagEspanhol flag
Japonês flagÁrabe flagRusso flagHolandês flagBúlgaro flagTcheco flagCroata flagDinamarquês flag
Finlandês flagHindu flagPolonês flagRomeno flagSueco flagGrego flagNorueguês flag 
By N2H
Dolet 96 di sconto su hosting DreamHost!
Utilizzare la "PROMO CODE" inerzia. LAMPADA con 20GB di spazio e 1 TB di trasferimento.

Copertura

  • No Related Posts

Categorie