Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru Сниппеты JS Сниппеты Цифра рядом со ссылкой в облаке тегов DLE на jQuery

Цифра рядом со ссылкой в облаке тегов DLE на jQuery


     29.03.2013    JS Сниппеты    4230

Все видели облако тегов на этом dle-faq.ru.
Можно сделать у себя точно так же, но без правок php и под любую версию DLE.
HTML:
<div class="tagcloud">
    {tags}
</div>

JS:
<script>
    jQuery(document).ready(function($) {
        $('.tagcloud a').each(function() {
            title = $(this).attr('title').split(': ');
            splitted = title[1];
            $(this).after('<sup> '+splitted+'</sup>');
        });
    });
</script>
Демо

Комментарии пользователей (10)

stopani
2

114 | 21

stopani - 4 апреля 2013 09:02 - Юзер

А можно сделать также, только с тегами которые выводятся в каждой новости?

КЭП
221

41 | 26

КЭП - 4 апреля 2013 09:38 - КЭП и его команда

Можно.

stopani
2

114 | 21

stopani - 4 апреля 2013 13:55 - Юзер

Не надо косить под дурачка! Типа не догоняешь цель вопроса.

YaSenHuy
1

6 | 2

YaSenHuy - 4 апреля 2013 14:24 - КЭП и его команда

Так что мешает попробовать ту же конструкцию в каждой новости? Религия не позволяет?

stopani
2

114 | 21

stopani - 4 апреля 2013 14:33 - Юзер

Дело не в религии! Прежде чем писать вопрос я проверил, и оказалось, что не работает в тегах краткой новости.

stopani
2

114 | 21

stopani - 4 апреля 2013 14:37 - Юзер

и в полной тоже

nowheremany
192

1659 | 1292

nowheremany - 4 апреля 2013 15:32 - Эксперт

Этот скрипт делает вместо tag: 3, tag3 - в полной новости есть количество новостей по этому тэгу? Тогда почему вы думаете что оно будет работать.

Благодарность принимаю тут Связь

sanyaray
11 | 1

sanyaray - 30 мая 2013 03:28 - Юзер

Главное не вставить
<script>
jQuery(document).ready(function($) {
$('.tagcloud a').each(function() {
title = $(this).attr('title').split(': ');
splitted = title[1];
$(this).after('<sup> '+splitted+'</sup>');
});
});
</script>


Перед
</head>
как многие пишут
Тк может потом не работать AJAX
Лучше вставить перед
</body>

И обойтись без конфликта

Владимир
17 | 2

Владимир - 27 октября 2013 16:27 - Юзер

Или можно просто в tagscloud.php добавить:
".$value['count']."
после:
<a href=\"".$config['http_home_url']."tags/".urlencode($value['tag'])."/\" class=\"{$value['size']}\" title=\"".$lang['tags_count']." ".$value['count']."\">".$value['tag']." 
4 раза

MaratScorp
1

MaratScorp - 22 мая 2014 14:53 - Юзер

Немного подправил у себя, так как спотыкалось об фразу "Показать все теги" где title пустой, то есть об пустоту, и в итоге некоторые сркипты не работали, ибо вызывало ошибку. В результате также скорее всего отпадает необходимость ставить перед </body>, во всяком случаи у меня стоит между <head> и </head>.

<script>
        jQuery(document).ready(function($) {
           $('.tagcloud a').each(function() {
              e = $(this).attr('title');
              if(e){
                title = e.split(': ');
                splitted = title[1];
                $(this).after('<sup> '+splitted+'</sup>');
              }
           });
        });
</script>

Чтобы комментировать - войдите или зарегистрируйтесь на сайте