Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   опредение значения float у изображения (https://javascript.ru/forum/misc/34563-opredenie-znacheniya-float-u-izobrazheniya.html)

andreychaki 10.01.2013 09:32

опредение значения float у изображения
 
приветствую!
имеется такая структура
<div class="cont">
  <img style="float: left;" src="img1.jpg">
  <img style="float: left;" src="img1.jpg">
  <img style="float: right;" src="img1.jpg">
  <img style="" src="img1.jpg">
  <img  src="img1.jpg">
</div>

мне необходимо определять значение флоата и в зависимости от него ставить класс картинке.
с условием и назначением класса все в порядке. но не могу сделать правильную выборку
var znFloat = $('.obcont  img').css("float");
пробовал так. не помогло
точнее выбирает только первую картинку

Tek 10.01.2013 09:47

нужно так:
for(i = 0;i < $('.cont > img').lenght;i++){
  var znFloat = $('.cont > img').eq(i).css("float");//переберем все картинки где i порядковый номер изображения
  if (znFloat == "right"){
    //Выполняем для него ваш код.
  }else{
    //Выполняем для него ваш код.
  }
}


Не понял где '.obcont' у изображения?

andreychaki 10.01.2013 10:12

мой косяк. родительский контейнер с классом obcont.
$('.cont > img') так нельзя, так как внутри может быть любая вложенность.
пытаюсь вывести $('.obcont img').lenght алертом, выдает undifined

Tek 10.01.2013 10:26

Напиши правильный пример html кода, выдает undifined потому что неправильная выборка

andreychaki 10.01.2013 10:29

http://jsfiddle.net/pCVch/

andreychaki 10.01.2013 10:36

ошибка в .lenght. правильно length
спасибо!

Deff 10.01.2013 10:41

andreychaki,
в .length у Вас русская е.
<!DOCTYPE html>
  <html>
    <head>
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <title> - jsFiddle demo</title>
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
      <link rel="stylesheet" type="text/css" href="/css/normalize.css">
      <link rel="stylesheet" type="text/css" href="/css/result-light.css">
      <style type="text/css">
.obcont img.Left {
border:2px solid green;
}
.obcont img.Right {
border:2px solid red;
}
.obcont img {
border:2px solid blue;
padding:0;
margin:2px;
}
  </style>

    </head>
    <body>
      <div class="obcont">
        <img style="float: left;" src="img1.jpg">
        <img style="float: left;" src="img1.jpg">
        <img style="float: right;" src="img1.jpg">
        <img src="img1.jpg">
        <img src="img1.jpg">
        <img src="img1.jpg">
      </div>
    </body>

<script type="text/javascript">
$(document).ready(function(){

	  $('div.obcont > img').each(function(){
	    var a=$(this).css('float')=='left';
	    var b=$(this).css('float')=='right';
	    if(a) $(this).addClass('Left');
	    if(b) $(this).addClass('Right')
	  }); 
}); 

</script>
  </html>

в .length у Вас русская е.

andreychaki 10.01.2013 10:48

клевета! открыл свой пример. поправил местами t и h, заработало


Часовой пояс GMT +3, время: 13:47.