使用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/
相关文章:
- 使用jQuery动态添加表并在其中动态添加行
- jQuery动态更改标题
- jQuery动态表单显示在select选项上
- 使用jquery动态创建ul-li
- 用DRY方式Javascript/JQuery动态替换HTML
- 使用jQuery动态添加onClick事件
- angularjs-bindng-click从jquery动态加载DOM
- jQuery动态地将图像添加到表中
- 如何使用jQuery动态创建HTML输入
- 使用jquery动态加载文本区域
- 如何选择使用jquery动态添加的类
- jQuery动态使用.append()添加输入,但发布表单不是追加数据
- 使用jquery动态解析XML文件
- 如何使用ajax和jquery动态更新数组表
- JQuery-动态创建的元素css不起作用
- 如何使用带包装器的Javascript/jQuery动态修改CSS类
- 如何将typeahead.js(Bloodhound)添加到jQuery动态创建的字段中
- 使用JQuery动态插入/删除字段
- jQuery动态更新数据键和值
- jQuery 动态从右到左的 CSS 处理