Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Нужно чтобы скрипт определял сколько букв в ссылке. (https://javascript.ru/forum/jquery/28307-nuzhno-chtoby-skript-opredelyal-skolko-bukv-v-ssylke.html)

jeysmook 14.05.2012 17:47

помогите пожалуйста!
 
Нужно чтобы скрипт определял сколько букв в ссылке. После того как определил, сделать так:
если в ссылке букв меньше чем 20 то применить style1, а если больше то применить style2.
Спасибо заранее ))

-------------------------КОД----------------------
$(document).ready(function(){
var settLink = $(".second_menu li").children().length;
if(settLink>20){
$(".second_menu li").children().addClass("link_long");
} else{
$(".second_menu li").children().addClass("link_short");
}
});
-------------------------СТИЛЬ----------------------
<style>
.style1{text-decoration:none;}
.style2{text-decoration:underline;}
</style>
-------------------------HTML----------------------
<ul class="second_menu">
<li><a href=''>фывфывфывфывфывфывфыв фывввы</a></li>
<li><a href=''>фывфывфыв</a></li>
<li><a href=''>фывфывфывфыв</a></li>
<li><a href=''>фывфывфывфывывфывывыф вфыв</a></li>
</ul>

jeysmook 14.05.2012 18:05

Я начал писать скрипт, а он определяет сколько букв в первом элементе li
а мне нужно чтобы во всех определил.

zebra 14.05.2012 18:27

$(".second_menu li").find('a').each(function() {
    var class_name = $(this).text().length > 20 ? 'style1' : 'style2';
    $(this).addClass(class_name);
});

jeysmook 14.05.2012 18:33

zebra,
Спасибо большое ))
а если допустим 3 значение будет ну например если
>10
>20
>30 то как ?)

jeysmook 14.05.2012 18:39

zebra,
и если вас не затруднит, то объясните пл3 строку

var class_name = $(this).text().length > 20 ? 'style1' : 'style2';
особенно там где вопрос и двоеточие.
Спасибо большое )

zebra 14.05.2012 18:44

Понял. лучше так заменить


var length = $(this).text().length;
if(length > 20) {
    class_name = '1';
}
else if(length > 30) {
   class_name = '2';
}
else {
    class_name = '3';
}

jeysmook 14.05.2012 18:55

zebra,
о спасибо все понятно )))


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