Utente:Codicorumus/Pagina principale/script opzioni.js
Nota: dopo aver pubblicato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.
- Firefox / Safari: tieni premuto il tasto delle maiuscole Shift e fai clic su Ricarica, oppure premi Ctrl-F5 o Ctrl-R (⌘-R su Mac)
- Google Chrome: premi Ctrl-Shift-R (⌘-Shift-R su un Mac)
- Internet Explorer / Edge: tieni premuto il tasto Ctrl e fai clic su Aggiorna, oppure premi Ctrl-F5
- Opera: premi Ctrl-F5.
$(function() {
function onDivTitleClick() {
var audioNoBoxHr = document.getElementById('audioNoBoxHr');
var audioNoBoxDiv = document.getElementById('audioNoBoxDiv');
var audioUl = document.getElementById('audioUl');
var audioBoxTitolo = document.getElementById('audioBoxTitolo');
var audioBoxContenuto = document.getElementById('audioBoxContenuto');
var audioBoxContenutoTd = audioBoxContenuto.getElementsByTagName('td')[0];
audioNoBoxHr.style.display = 'none';
audioNoBoxDiv.style.display = 'none';
audioBoxTitolo.style.display = 'table-row';
audioBoxContenuto.style.display = 'table-row';
audioBoxContenutoTd.appendChild(audioUl);
}
function onBoxTitleClick() {
var audioNoBoxHr = document.getElementById('audioNoBoxHr');
var audioNoBoxDiv = document.getElementById('audioNoBoxDiv');
var audioUl = document.getElementById('audioUl');
var audioBoxTitolo = document.getElementById('audioBoxTitolo');
var audioBoxContenuto = document.getElementById('audioBoxContenuto');
audioNoBoxHr.style.display = 'block';
audioNoBoxDiv.style.display = 'block';
audioBoxTitolo.style.display = 'none';
audioBoxContenuto.style.display = 'none';
audioNoBoxDiv.parentNode.insertBefore(audioUl, audioNoBoxDiv.nextSibling);
}
function init() {
// get all TD (as) content box
var tdList = jQuery('td[class*="MainPageBG"]').toArray();
if (!tdList) return;
var tdSecondoPiano = tdList[1];
// get TR blocks
var trBlocks = tdSecondoPiano.getElementsByTagName('tr');
// identificazione dei TR con un ID
for (var i = 0; i < trBlocks.length; i++) {
trBlocks[i].id = 'trBlock-' + i;
if (Math.floor(i/2) == i/2) {
trBlocks[i].setAttribute('onclick', 'opzioni_home_onTitleClick(' + i + ');');
trBlocks[i].style.cursor = 'pointer';
}
}
var tdPrimoPiano = tdList[0];
// get TR blocks
trBlocks = tdPrimoPiano.getElementsByTagName('tr');
var trEsclusive = trBlocks[3];
var audioNoBoxHr = trEsclusive.getElementsByTagName('hr')[1];
var audioNoBoxDiv = trEsclusive.getElementsByTagName('div')[4];
var audioUl = trEsclusive.getElementsByTagName('ul')[1];
var audioBoxTitolo = trBlocks[4];
var audioBoxContenuto = trBlocks[5];
// setIds
trEsclusive.id = 'trEsclusive';
audioNoBoxHr.id = 'audioNoBoxHr';
audioNoBoxDiv.id = 'audioNoBoxDiv';
audioUl.id = 'audioUl';
audioBoxTitolo.id = 'audioBoxTitolo';
audioBoxContenuto.id = 'audioBoxContenuto';
// set pointer
audioNoBoxDiv.style.cursor = 'pointer';
audioBoxTitolo.style.cursor = 'pointer';
// set listeners
addClickHandler(audioNoBoxDiv, onDivTitleClick);
addClickHandler(audioBoxTitolo, onBoxTitleClick);
}
init();
});
function opzioni_home_onTitleClick(clickedId) {
function switchMargins() {
var h2_0 = trList[0].getElementsByTagName('h2')[0];
var h2_2 = trList[2].getElementsByTagName('h2')[0];
h2_0.style.margin = '0.5em 0pt 0pt';
h2_2.style.margin = '0pt';
}
var trList = jQuery('tr[id^="trBlock"]').toArray();
var clickedPosition = -1;
for (var i = 0; i < trList.length; i++) {
if (trList[i].id == 'trBlock-' + clickedId) {
clickedPosition = i;
}
}
if (clickedPosition == -1) {
return;
}
// effettua lo spostamento
var parent = trList[0].parentNode;
if (clickedPosition == 0) {
// spostamento
parent.appendChild(trList[0])
parent.appendChild(trList[1])
// correzione margini
switchMargins();
} else {
var up2Sibling = trList[clickedPosition - 2];
// spostamento
parent.insertBefore(trList[clickedPosition], up2Sibling);
parent.insertBefore(trList[clickedPosition + 1], up2Sibling);
// correzione margini
if (clickedPosition == 2) {
switchMargins();
}
}
}