javascript – &符号(&)变成&

我使用以下代码每30秒自动获取/设置最新页面标题:

<script type="text/javascript">
   setInterval(function() {
      var data = "http://mysite.com/mypage.php";
      $.get(document.location.toString()).then(function (data){
      //find and set the title of the page
      document.title = data.match(/<title>(.+)<\/title>/)[1];
        });
    }, 30000);
</script>  

除了包含&符号的标题外,它的效果很好.这些负载正常,然后在30秒后更换为:

&amp;

因此,如果页面标题是:

Fun & Games

30秒后,它变为:

Fun &amp; Games

谢谢

解决方法:

不要使用正则表达式来提取标题,而是尝试询问DOM返回页面的标题是什么.问题是,在你的文件中,它是& amp;,但一旦解析它就变成&amp ;.

$.get(document.location.toString()).then(function (data){
    //find and set the title of the page
    document.title = $(data).filter('title').text();
});
上一篇:Javascript setInterval – 率还是延迟?


下一篇:javascript – 你能使用setInterval异步调用函数吗?