2012-12-19 1 views
6
<div id="videos"> 
    <div id="channel_div" style="display: block;"> 
     <div style="color: rgb(0, 0, 0); font-family: Arial, Helvetica, sans-serif; font-size: 12px; width: 555px;" class="firstVideo"> 
     .. trimmed <table here> 

     </div> 
     <div style="color: rgb(0, 0, 0); font-family: Arial, Helvetica, sans-serif; font-size: 12px; width: 555px;"> 
     .. trimmed <table here> 
     </div> 
    </div> 
</div> 

ho sopra frammento e div s all'interno channel_div è venuta da youtube con gli stili, con vincoli di larghezza che rompe l'interfaccia utente.stili CSS Rimuovere provenienti dai video di YouTube embeded

Come posso rimuovere questi stili con jquery?

ho provato quello che this domanda suggerito come segue:

$('#channel_div div').removeAttr('style'); 

provato anche questo:

$('#channel_div > div').removeAttr('style'); 

ma nessuno di questi ha funzionato. Voglio solo aggiungere la mia larghezza a 300 px.

Qualcuno potrebbe offrire indicazioni su questo.

+6

Dovrebbero essere in un iframe e non è possibile manipolarli utilizzando JavaScript. – undefined

+0

ah fammi provare quello – DarthVader

+0

Sì, @undefined è giusto .. Stavo pensando ad alcuni problemi come non è possibile eliminare l'attributo "stile", ma in realtà è possibile. Quindi suppongo che il motivo per cui non puoi manipolare è che l'html si trova all'interno di un iframe. – redShadow

risposta

2

Non si può fare questo con iframe da domini remoti.

Tuttavia, è possibile utilizzare php e recuperare il file remoto internamente per rimuovere tali parametri sul lato server o anche con jquery caricando quel file recuperato e trasformandolo in un embed interno.

Inoltre, se si tratta solo di un problema di larghezza, hai provato ad aggiungere una regola CSS?

.firstVideo { max-width: 300px !important; } 

Sono sul mio cellulare, quindi non posso davvero testarlo adesso per essere sicuro.

+0

questo ha funzionato grazie amico. – DarthVader

0

Penso che si può manipolare il codice HTML è all'interno di un iframe, provate questo:

$('#iframeID').contents().find('#someID').html(); 
+0

Sì, è possibile, ma qui come la fonte dell'iframe è diverso NON PUOI. http://en.wikipedia.org/wiki/Same_origin_policy – undefined

0

video di youtube embedded saranno in iframe qualcosa di simile:

<iframe width="570" height="321" 
      src="http://www.youtube.com/embed/L5ZGU1Qkx8? 
      wmode=opaque&showinfo=0&autohide=1" frameborder="0"> 
    </iframe> 

Così qui è possibile impostare l'altezza e la larghezza utilizzando il proprio attributo.