繁体   English   中英

使用 jQuery 动态更改元标记

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM