JQuery прокрутка Marquee в HTML-тег заголовка страницы - PullRequest
2 голосов
/ 04 ноября 2010

Я хочу разместить прокрутку в моем теге заголовка html, используя jquery, но не знаю как и не могу найти хорошего объяснения в Интернете где-либо. Может кто-нибудь помочь мне, пожалуйста?

Ответы [ 4 ]

11 голосов
/ 04 ноября 2010

Это не очень сложно сделать, если вы просто хотите, чтобы он прокручивался как тег marquee:

(function titleMarquee() {
    document.title = document.title.substring(1)+document.title.substring(0,1);
    setTimeout(titleMarquee, 200);
})();

Это довольно просто, но должно дать вам представление о том, как настроить его по своему вкусу.

4 голосов
/ 01 ноября 2013

В ответе Тату Ульманена есть проблема с пробелами.Как сказал psarid в качестве комментария, после первой прокрутки все пробелы удалены.

Это потому, что html-парсер обрезает тексты.Это означает, что он удаляет пробелы в конце и в начале текста.Когда заголовок прокручивается, объект заголовка в html выглядит так:

<title>Scrolling Title With Spaces</title>
<title>crolling Title With SpacesS</title>
<title>rolling Title With SpacesSc</title>
<title>olling Title With SpacesScr</title>
...
<title>Title With SpacesScrolling</title>

Как вы можете видеть выше, мы потеряли пробел между словами Scrolling и Spaces.Чтобы предотвратить это, нам нужно хранить оригинальный document.title где-нибудь в нашем коде javascript и ставить пробел или что-то еще до конца.Затем мы можем прокрутить document.title, прокручивая текст в другой переменной.Вот модифицированный код Tatu Ulmanen.

var documentTitle = document.title + " - ";

(function titleMarquee() {
    document.title = documentTitle = documentTitle.substring(1) + documentTitle.substring(0,1);
    setTimeout(titleMarquee, 200);
})();
0 голосов
/ 28 июня 2019

Нет JQuery voê pode fazer assim:

setInterval(function () {
  $("head title").html($("head title").html().substring(1) + $("head title").html().substring(0,1));
}, 300);
0 голосов
/ 04 декабря 2014

Добавьте приведенный ниже скрипт в заголовок вашей страницы и затем вызовите функцию scrlsts () при загрузке тела

<script type="text/javascript">
var scrl = $('title').text();
function scrlsts() {
     scrl = scrl.substring(1, scrl.length) + scrl.substring(0, 1);
     document.title = scrl;
     setTimeout("scrlsts()", 500);
     }
<script>

...