сокращать вывод базы данных с помощью jquery - PullRequest
0 голосов
/ 22 сентября 2009

Я ищу способ ограничить количество символов, отображаемых в заголовке, используя jquery. По сути, заголовок извлекается из базы данных, но я хочу, чтобы результаты отображались только на одной строке заданной ширины, поэтому я хотел бы ограничить вывод или сократить его, чтобы изображения, расположенные ниже, переместились слишком далеко вниз.

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

Надеюсь, кто-то может помочь !!!!

Ответы [ 2 ]

2 голосов
/ 22 сентября 2009

Дэн, я немного озадачен тем, что вы ищете, но похоже, что вы хотите, чтобы какой-то код урезал длину символа определенного поля. Я заметил, что вы пометили этот вопрос PHP - вероятно, было бы лучше обрабатывать его на стороне сервера. Однако, если вы настроены на использование Jquery, возможно, есть простой способ сделать это.

Ключевым моментом, который необходимо выяснить, является то, какой шаблон вы собираетесь использовать для идентификации тегов полей на странице (т. Е. Какой тип селектора jquery вы будете писать, чтобы выбрать нужные теги)? После этого функция .slice () javascript достигнет того, что вы хотите.

Итак, вот пример. Основываясь на странице, на которую вы ссылаетесь, я хочу сказать, что мы могли бы выбрать вывод вашего поля, выбрав любой тег span, который является прямым потомком тега привязки, который является прямым потомком элемента списка.

$('li > a > span')

Затем оттуда мы можем получить содержимое диапазона, проверить ширину и обрезать, если нам нужно.

(не проверено, но дает идею)

<script type="text/javascript">

    var MAX_TITLE_LENGTH = 75;

    // on page load...
    $(function() {
        truncateImageTitles();      
    });

    function truncateImageTitles() {
        $('li > a > span').each(
            if (this.text().length > MAX_TITLE_LENGTH)
                this.text(this.text().slice(0,MAX_TITLE_LENGTH));
        );
    }

</script>
1 голос
/ 23 сентября 2009

Обрезка с помощью PHP будет работать, как сказал Т. Стоун, но вам придется выяснить, хотите ли вы обрезать передний конец заголовка или задний конец. Множество примеров. Я использую отделку с заголовками на своем собственном WordPress сайте. Это обрезает первые 13 символов из заголовка сообщения вместо названия_.

<?php $mytitle = get_the_title(); $mytitle = substr($mytitle,13); echo $mytitle; ?>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...