2016-02-18 7 views
5

Nie mogę umieścić szerokość i wysokość pliku img w innej klasie css. Gdybyś tylko dał mi wskazówkę, która byłaby miła! Oto mój kod:JavaScript uzyskać szerokość i wysokość img i umieścić go w css innej klasy

$('.Main_hover').each(function() { 
    var $this = $(this); 
    var w = $this.find('img').width(); 
    var h = $this.find('img').height(); 
    $(".fusion-button-wrapper").css('height', h); 
    $(".fusion-button-wrapper").css('width', w); 
}); 

Oczywiście Jej owinięte wokół document.ready.

Oto HTML, gdzie chcę mieć szerokość i wysokość obrazu:

<div class="imageframe-align-center"> 
    <span class="fusion-imageframe imageframe-none imageframe-1 hover-type-none Main_hover"> 
    <a class="fusion-no-lightbox" href="http://lowette.devel.growcreativity.be/portfolio-items/dummy3/" target="_self"> 
     <img src="http://lowette.devel.growcreativity.be/wp-content/uploads/2016/01/lowette_blok1_1.png" alt="Blok1_1" class="img-responsive">    </a> 
</span> 
</div> 

A oto div class gdzie chcę dać szerokość i wysokość:

<div class="fusion-button-wrapper"></div> 
+0

Pokaż nam swój HTML zbyt. – RRK

Odpowiedz

3

Lepiej zrobić to, co robisz po załadowaniu img, ponieważ przeglądarki webkit ustawiają właściwość height i width po wczytaniu obrazu. Które mogą być lub mogą nie być po ukończeniu dokumentu.

$('.Main_hover img').load(function() { 
 
    $(".fusion-button-wrapper").width(this.width); 
 
    $(".fusion-button-wrapper").height(this.height); 
 
});
.fusion-button-wrapper{ 
 
    background: blue; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="imageframe-align-center"> 
 
    <span class="fusion-imageframe imageframe-none imageframe-1 hover-type-none Main_hover"> 
 
    <a class="fusion-no-lightbox" href="http://lowette.devel.growcreativity.be/portfolio-items/dummy3/" target="_self"> 
 
     <img src="http://lowette.devel.growcreativity.be/wp-content/uploads/2016/01/lowette_blok1_1.png" alt="Blok1_1" class="img-responsive">    </a> 
 
</span> 
 
</div> 
 
<div class="fusion-button-wrapper"></div>

+0

Szerokość i wysokość nie wydają się zmieniać na klasie. Po prostu wypróbowałeś to, to jest strona z wordpress, czy to zmienia sytuację? –

+0

@ArneBanck zobacz demo .. – RRK

+0

EDYCJA: Zapomniałem wymienić $ na jQuery ... Dzięki za odpowiedź. –

0

można użyć heightwidth funkcję jQuery i clientHeightclientWidth javascript

$('.Main_hover').each(function() { 
    var $this = $(this); 
    var h = $this.find('img')[0].clientHeight; 
    var w = $this.find('img')[0].clientWidth; 
    $(".fusion-button-wrapper").height(h); 
    $(".fusion-button-wrapper").width(w); 
}); 
+0

Nie ma gwarancji, że to zadziała. Zależy od czasu ładowania obrazu w przeglądarkach webkit. – RRK

+0

@RejithRKrishnan twój poprawny będzie działać, gdy obraz zostanie załadowany w dom – shu

Powiązane problemy