background image sparisce e diventa visibile un testo in un div

gandalf1959

Utente Attivo
21 Nov 2013
208
1
18
Buongiorno a tutti,
sto cercando di ottenere quanto riportato in oggetto.
Sulla mia pagina ho una serie di div ai quali ho attribuito un'immagine come sfondo (si tratta di loghi).
qui l'html:
HTML:
<div id="kitchenaid" onMouseOver="cambiastile(this);" onMouseOut="ritorna(this);">
   <span class="testopartner" style="display: none"><strong>KitchenAid</strong> è parte totalmente integrante di tutti i progetti relativi al Teatro7 e inserita in tutta la comunicazione a 360°. C'è una chiara ed effettiva collaborazione tra Kitchen Aid e teatro7|Lab su tutto quello che riguarda la comunicazione e che sponsorizza la fornitura di piccoli elettrodomestici come impastatrici, blender, cutter come pure i grandi elettrodomestici come forni, cappe, abbattitore, ecc.</span>
  </div>

Questo e' lo script cambiastile:
Codice:
function cambiastile(id) {
    
    id.style.backgroundImage="none";
    id.getElementsByTagName("span").style.display = "block";
    }

Ora, l'immagine di sfondo mi si nasconde correttamente, mentre non riesco a identificare correttamente lo span e quindi la riga
Codice:
id.getElementsByTagName("span").style.display = "block";
mi provoca un errore "Uncaught TypeError: Cannot set property 'display' of undefined".
Come faccio a rendere visibile lo span all'interno del div? Perche' non mi identifica correttamente lo span?

Questo e' lo stile assegnato ai diversi elementi:
Codice:
kitchenaid {
  background-image: url(../immagini/partners/kitchenAid.gif);
  background-repeat: no-repeat;
  background-position: center center;
  background-color: white;
  float: left;
  margin-left: 2em;
  width: 40%;
  height: 120px;
  border: solid 1px #ccc;
  padding: 0.5em;
}
.testopartner {
  font-size: 0.8em;
  text-align: left;
}

Grazie per l'aiuto
 

MAeSI

Utente Attivo
13 Apr 2014
71
1
8
quellidelcucuzzolo.blogspot.it
Ciao, getElementsByTagName non restituisce un singolo elemento, ma un array di elementi. Se in ogni div è presente un unico span:

Codice:
id.getElementsByTagName("span")[0].style.display = "block";
 

gandalf1959

Utente Attivo
21 Nov 2013
208
1
18
Grazie.
Pensavo erroneamente che indicando id.getElement... mi restituisse il solo span contenuto in div, non avevo pensato al fatto che comunque era un array, sia pure con un solo elemento...
Perfetto, ora funziona. E meno male che era uno script semplice... :)
 
Discussioni simili
Autore Titolo Forum Risposte Data
L [HTML] Background-image HTML e CSS 9
gandalf1959 Background image in un div con CSS non funziona HTML e CSS 4
F background image tr chrome HTML e CSS 3
andre9004 Jquery background-image fade (Effetto comparsa background-image) jQuery 8
N preload background image animazione sequenza Javascript 1
O [HTML] problemi con la regola "background-attachment: fixed" in EDGE HTML e CSS 0
A cordova-plugin-background-mode Sviluppo app per Android 0
A [HTML] Background size per dispositivi mobili HTML e CSS 4
M [Javascript] Adattare immagine di background all'altezza dello smartphone Javascript 1
asevenx [HTML] -webkit-filter solo su immagine di background HTML e CSS 5
S [WordPress] Footer php - il background riempie tutta la pagina - help WordPress 1
cornamusa [HTML] Immagine di Background HTML e CSS 1
Andrea Alessandrini [HTML] background annidati che si sovrappongono male HTML e CSS 3
S [HTML] Background responsive HTML e CSS 21
M [WordPress] [HTML] Problema immagine background respondive WordPress 21
A [HTML] background fisso che non si ridimensiona con lo zoom HTML e CSS 4
D [HTML] Sfondo-Background fisso ma non troppo con effetto in movimento HTML e CSS 4
D Persa connessione con apparecchio Bluetooth in background Sviluppo app per iOS 0
F background a tutto schermo e bottoni HTML e CSS 5
borgo italia scelta dei colori di background e colori di contrasto Snippet PHP 1
Francesco Polese PHP script sempre in background PHP 0
V Aggiungere un img nel background Sviluppo app per Android 1
ivarello Progressbar e dati background .NET Framework 1
V Background sito web HTML e CSS 1
L mailto: apre la finestra di posta in background HTML e CSS 2
V area ripetuta e cambiamento background in foto PHP 0
G Background scorrevole in una <div> jQuery 4
Y Invio email automatico database background Database 1
I Slide di immagini come background ? Javascript 0
I Slide di immagini come background ??? jQuery 1
voldemort [LIBRERIA] Background Mail Sviluppo app per Android 0
A inserire background con gradiente in un layout Sviluppo app per Android 1
P Mancata estensione background-repeat sul resto della pagina oltre il primo div e/o prima tabella HTML e CSS 2
A Modificare background flash Flash 11
Shyson Shade background non copre tutto il monitor HTML e CSS 4
F altezza background tutto schermo HTML e CSS 3
Sevenjeak [Vb.net 2010] Aiuto background worked .NET Framework 10
G Richiamare URL in Background (Nascosto) come se fosse eseguito da browser PHP 3
R Inserire un background a rotazione? HTML e CSS 1
D background della pagina di login Webdesign e Grafica 5
U E' possibile dividere un' immagine o un background in celle? jQuery 0
D background in tre sezioni "WordPress" HTML e CSS 0
I Problema Background HTML e CSS 2
I Script ogni secondo in background PHP 2
maxbossi [CSS] background CSS HTML e CSS 0
voldemort [CSS] Definire tutte le proprietà del background in un unica riga HTML e CSS 1
A Aiuto per soggetto da scontornare dal suo background Photoshop 8
N background, repeat, altezza, boxmodel.. sto impazzendo! HTML e CSS 3
L CHAT colore messaggi di testo e colore background PHP 0
L Background musicale per tutto il sito Flash 1

Discussioni simili