Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Immagine di sfondo in una tabella

    Salve a tutti, ho questo codice recuperato qua nel forum e riadattado alle mie esigenze, in pratica è una funzione che genera una tabella automaticamente inserendo in numero di colonne, di righe e la larghezza della tabella.
    Oltre a queste caratteristiche volevo aggiungere una immagine di sfondo alla tabella ma non ci sono riuscito.

    codice:
    function GeneraTabella() {
    if (document.createElement && document.getElementsByTagName) {
    
    nrighe=10;
    ncolonne=10;
    larghezza=800;
    larghezzacella=Math.floor(800/ncolonne)+'px';
    
    tabella=document.createElement('TABLE');
    corpo=document.getElementsByTagName('BODY').item(0);
    corpotab=document.createElement('TBODY');
    
    for (i=0; i<nrighe; i++) {
    riga=document.createElement('TR');
    for (j=0; j<ncolonne; j++) {
    cella=document.createElement('TD');
    cella.setAttribute('width',larghezzacella);
    attributo=prompt('Caratteristiche della '+(j+1)+' cella della '+(i+1)+' riga.\nTesto:');
    testo=document.createTextNode(attributo);
    cella.appendChild(testo);
    cella.setAttribute('bgcolor','Transparent');
    riga.appendChild(cella);
    }
    corpotab.appendChild(riga);
    }
    
    tabella.setAttribute('width',larghezza);
    tabella.setAttribute('bgColor','Transparent');
    tabella.appendChild(corpotab);
    corpo.appendChild(tabella);
    }
    }
    
    else alert('Spiacente, il tuo browser non supporta lo standard DOM.');
    }
    ho provato a mettere:
    codice:
    sfondo = url([  'sfondo.jpg' ]);
    tabella.setAttribute('background-image', sfondo);
    Ma non funziona. Qualcuno sa dirmi come posso fare?? Pensavo ad inserire un file di stile al file JS ma non so come si fa e soprattutto se si può fare.
    Inoltre sapete dirmi se sarà possibile aggiungere in ogni cella un oggetto che possiederà l'evento onclick???
    (in pratica quando la mia tabella sarà creata, nelle celle ci dovranno essere delle immagini cliccabili)

    Grazie.

  2. #2
    ciao, hai provato con un tabella.setAttribute('style','background-image:url(immagine.gif)');?

    saluti

  3. #3
    Ho provato a mettere
    codice:
    tabella.setAttribute('style','background-image:url(sfondo.PNG)');
    Ma non succede assolutamente niente
    Problemi con le virgolette e le doppie virgolette???

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    tabella.style.backgroundImage='url(sfondo.png)';

    se non lo vedi e' perche' hai altro che in qualche modo si sovrappone alla regola
    x es. qui hai un
    tabella.setAttribute('bgColor','Transparent');

    che dovrebbe come minimo essere 'transparent'

    poi fai tutto con gli stili piuttosto che con gli attributi dei tag

    ciao

  5. #5
    grazie ancora, finalmente vedo lo sfondo. A questo punto dovrei inserire nelle celle delle altre immagini che abbiano l'evento onclick.

    codice:
    ...
    for (i=0; i<nrighe; i++) {
    riga=document.createElement('TR');
    for (j=0; j<ncolonne; j++) {
    cella=document.createElement('TD');
    cella.setAttribute('width',larghezzacella);
    
    >>>  COSA GLI METTO QUA ????  <<<
    
    cella.appendChild(....);
    riga.appendChild(cella);
    }
    ...

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    cella.onclick=nomeFunzione;

    oppure
    cella.onclick=function(){nomeFunzione('eventuali parametri')}

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.