[英]Changing meta-tags dynamically with jQuery
我有一个包含多个段落的页面,当用户单击段落旁边的“快照”按钮时,该段落将作为图像复制在画布上并显示在原始段落上方。
在快照段落旁边是一个“共享”按钮,如何在单击“共享”按钮时将以下元标记内容的 url 更改为快照段落的 url。
分享按钮
<a href="#" id="share">Share?</a>
在点击分享按钮之前
<meta name="twitter:image" content="p.jpg">
点击分享按钮后
<meta name="twitter:image" content="image/paragraphxi34343.jpg">
任何解决方案?
不确定这是否是优化的方式,但这应该可行。
$("meta").each(function() {
if($(this).attr("name") == "twitter:image") {
$(this).attr("content" , "image/paragraphxi34343.jpg");
};
});
一种更通用的方法是
function changeMetaContent(metaName, newMetaContent) {
$("meta").each(function() {
if($(this).attr("name") == metaName) {
$(this).attr("content" , newMetaContent);
};
});
}
像这样打电话
changeMetaContent("twitter:image", "image/paragraphxi34343.jpg");
在评论中讨论后更新
如果您在输入字段中有 url,请执行此操作。
<input value="http://some-image-url.png" type="hidden" id="image-url-input" />
像这样调用函数;
var imageURL = $("image-url-input").val();
changeMetaContent( "twitter:image", imageURL );
$('head meta[name=twitter:image]').attr('content', 'image/paragraphxi34343.jpg');
看看: https ://api.jquery.com/attr/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.