Schimbare valoare class intre doua Div-uri
Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
-
patricia
- Mesaje: 82
Schimbare valoare class intre doua Div-uri
Am incercat pentru doua div-uri cu doua clase "div1" si "div2" sa interschimb valoarea atributelor class prin "
obiect.className="valoare" " dar nu functioneza. Trebuie sa folosesc alta functie?
Cod: Selectaţi tot
<html>
<head>
<title>
exercitiu
</title>
<style type="text/css">
.div1{
position:absolute;
top:50px;
left:40px;
width:300px;
height:100px;
border:2px solid blue;
background-color:red;
}
.div2{
position:absolute;
left:200px;
top:400px;
width:100px;
height:300px;
border:2px solid red;
background-color:blue;
}
</style>
</head>
<body>
<div class="div1">
</div>
<div class="div2">
</div>
<form>
<input id="modifica" style="position:absolute;top:20px;left:20px;" value="interschimba" type="button">
</form>
<script type="text/javascript">
var aux=document.getElementById("modifica");
aux.onclick=function(){
elem=document.getElementsByTagName('div');
elem[0].className='div2';
elem[1].className='div1';
};
</script>
</body>
</html>
MarPlo
Mesaje: 4343
Cu
obiect.className se poate prelua si modifica valoarea atributului "class".
Problema in scriptul de mai sus e "
position:absolute; " setat in CSS, ceea ce face ca respectiva clasa sa isi mentina pozitia, chiar daca acea clasa e transferata la alt Div, din cauza ca ramane in aceeasi pozitie, cu aceleasi proprietati, nu se observa schimbarea.
Ca sa observi modificarea, adauga un text diferit in ele, sau sterge "
position:absolute; ", cum e in acest exemplu.
Cod: Selectaţi tot
<html>
<head>
<title>exercitiu</title>
<style type="text/css">
.div1{
top:50px;
left:40px;
width:300px;
height:100px;
border:2px solid blue;
background-color:red;
}
.div2{
left:200px;
top:400px;
width:100px;
height:300px;
border:2px solid red;
background-color:blue;
}
</style>
</head>
<body>
<div class="div1">012...</div>
<div class="div2">ABC XYZ</div>
<form>
<input id="modifica" value="interschimba" type="button" />
</form>
<script type="text/javascript">
document.getElementById('modifica').onclick=function(){
var elem = document.getElementsByTagName('div');
elem[0].className = 'div2';
elem[1].className = 'div1';
};
</script>
</body>
</html>
Subiecte similare
-
Partajare funcții între componente Vue.js
JavaScript - jQuery - Ajax
Primul mesaj
În aplicația am o mulțime de funcții utilitatere care fac diferite lucruri, de la analiza șirurilor până la realizarea toastelor și așa mai departe....
Ultimul mesaj
Pentru asta poți utiliza Mixins.
1. Importa componenta de care ai nevoie.
2. adăuga un mixin array ca mai jos în componenta ta, chiar deasupra...
-
Animație cu pauză între fiecare rotație
HTML - XHTML - CSS
Primul mesaj
Am un Div pe care vreau să-l rotesc de la 0 la 90 grade, pauză 2s, apoi de la 90 la 180, iar pauză 2s .., tot asa până la 360 de grade.
Vreo idee...
Ultimul mesaj
Puteți face cu animații CSS transform: rotate() , ca în exemplu de mai jos.
Setezi timpul de rotatie la 12 secunde si incepi cele 4 rotatii...
-
Inversare cheie cu valoare in obiect JS
JavaScript - jQuery - Ajax
Primul mesaj
Nu imi dau seama cum pot schimba urmatorul obiect in JavaScript:
{ first : , second : , third : }
In acesta:
{ de : , ab : }
Vreau să...
Ultimul mesaj
Trebuie să parcurgi array-urile și pentru fiecare element din array verifici dacă există sau nu un array pentru acea valoare în acumulator înainte de...
-
Produsul Dot a doua array in Javascript
JavaScript - jQuery - Ajax
Primul mesaj
Cum se poate implementa eficient o metoda dotProduct (pentru a obține produsul Dot din două array) fără a importa alte biblioteci Javascript?
De...
Ultimul mesaj
Iată o metodă.
Se foloseste funcția map() pentru a crea un nou array cu rezultate înmulțite ale fiecărui index, apoi se aplica funcția reduce()...
-
Convertire 8-biți număr în valoare de culoare Hex în JavaScript
JavaScript - jQuery - Ajax
Primul mesaj
Încerc să convertesc un număr întreg de 8-biți în valoare de culoare Hex. (de ex. FFFFFF).
Numarul de culoare pe 8-biți este generat cu următoarea...
Ultimul mesaj
Dacă ai un număr întreg, poți face cu:
color.toString(16)
Și îl va transforma într-un șir Hex.
// White
color = (255 * 65536) + (255 *...