javascript – 如何使用jQuery追加html

我试图将Facebook开放图形标记(基于页面上动态生成的内容)添加到我的html头部.

$(document).ready(function(){
var stat = $('#random-message').text();
stat = jQuery.trim(stat);

//set facebook Open Graph description
$('head').append('<meta property="og:description" content="'+stat+'"/>');

  });

这本身就很好. js fiddle

当我将它与动态加载的Twitter脚本结合时(如下)

$(document).ready(function(){
var stat = $('#random-message').text();
stat = jQuery.trim(stat);
//set tweet button data text
$('a.twitter-share-button').attr('data-text',stat);

//set facebook Open Graph description
$('head').append('<meta property="og:description" content="'+stat+'"/>');

//insert twitter API Script - problematic
$('#tweet-like').append('<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>');

});

它摇摇晃晃地摇摇头. js fiddle在js小提琴中,它会在主体中插入一些特殊字符,并且脚本的其余部分(包括插入元标记)都不起作用.奇怪,因为Twitter脚本“widgets.js”正在我的页面上工作,但是元标记没有出现.

Facebook不使用当前页面中的元标记,它会重新请求页面并对其进行解析.由于该解析不涉及在页面中运行任何Javascript,因此它不会将元标记添加到读取的数据中.

要使元标记起作用,它必须从头开始出现在页面中,不能使用客户端脚本添加.

相关文章
相关标签/搜索