0

我正在尝试根据标题中的字符数使用 jquery 将文本添加到我的页面标题标签中。

如果字符数 <= 30,我想在标题前面加上文字

我在以下方面取得了一些成功:

         $(document).ready(function(){
         if ( $('title').length > 0 ){
              $('title').prepend('mytext');
             }
             })

但这仅适用于总字符数,因此如果我输入 > 200 那么它不会附加文本如果我输入 > 0 它会附加文本但 <=30 不起作用所以我想我正在寻找代码将在加载时计算每个页面标题,然后应用条件。

我希望这是有道理的..!!

谢谢

4

4 回答 4

2

它应该是这样的:

if ( $("title").text().length <= 30 ){
    $('title').prepend('mytext');
}
于 2013-08-20T10:30:17.737 回答
0

这个不需要 JQuery。

使用document.title而不是您的选择器(选择所有标题标签)。

document.title是页面标题的简单读/写属性。

例如

 $(document).ready(function(){
     var title = document.title;
     if ( title.length <=30 ){
         document.title = 'mytext' + title;
     }
 })

极简版:

 if ( document.title.length <=30 ){
     document.title = 'mytext' + document.title;
 }

你们中你确实更喜欢 JQuery,Ganesh Pandhere 的答案也有效。

于 2013-08-20T10:29:24.453 回答
0

我猜只有一个标题。您正在计算标题的数量。你应该这样做:

 $(document).ready(function(){
     var title = $('title').eq(0);
     if ( title.text().length > 0 ){
          title.prepend('mytext');
     }
 })
于 2013-08-20T10:32:24.893 回答
0

如果您在一页上有多个标签,它看起来像:

$(document).ready(function(){
    $('h2').each(function(){
        if($(this).html().length < 30){
            $(this).prepend('Hi, this is ');
        }
    });
});

http://jsfiddle.net/danieltulp/u2tPH/

于 2013-08-20T11:35:13.180 回答