JQuery перебирает строковые вхождения - PullRequest
0 голосов
/ 18 января 2011

У меня есть такой HTML-код

blalblala bla blalba bla и так далее ...

Теперь я хотел бы получить левую позицию для всех предметов типа myID. Я пробовал с этим кодом

var x = "";   
$('.myID').each(function(index) { 
    x += " " + $(this).position().left+",";  
}); 
return x;

Но это неправильно, потому что ничего не возвращает. В чем дело? Спасибо

Ответы [ 3 ]

2 голосов
/ 18 января 2011

Вы не должны использовать id для более чем одного элемента.Соответствующий атрибут для использования является классом.

<span class="myClass" >bla < /span> 
<span class="myClass"> bla< /span>

И тогда ваш код должен работать, если вы обновите селектор на:

$('.myClass')
0 голосов
/ 19 января 2011
  • у вас есть несколько идентичных идентификаторов в вашем документе [фрагмент]
  • вы используете селектор классов, тогда как у вас есть идентификаторы

Чтобы процитировать бот freenode # css:

Изучите тонкости HTML и CSS здесь: http://wsc.opera.com/, http://www.htmlhelp.com/, http://css -discuss.incutio.com / ,http://www.brainjar.com/, http://www.htmldog.com/, http://css.maxdesign.com.au/

0 голосов
/ 18 января 2011
var x = new Array;
$('.myID').each(function(index) { x[index] = $(this).position().left; });
console.log(x);

попробуйте это и посмотрите, что присутствует в массиве x.

...