- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在我的博客上创建了一个新页面,我想在那里添加一个包含相同标签的所有帖子的列表。例如:标签名称是“游戏”,我正在寻找一个 JavaScript,它将列出所有带有包含标签“游戏”的图片的帖子。
这里我已经有一个列出热门帖子的代码:
<div class="widget-slimecuty-popular-posts">
<ul id="popular-li-container" style="list-style-type: none; padding: 0;">
<script type="text/javascript">
function loadXML(url) {
var xmlRequest = new XMLHttpRequest();
xmlRequest.onreadystatechange = function () {
if (xmlRequest.readyState == 4 && xmlRequest.status == 200) {
parseResponse(xmlRequest);
}
};
xmlRequest.open("GET", url, true);
xmlRequest.send();
}
function parseResponse(xml) {
var txtData = xml.responseText;
var parserDiv = document.createElement("div");
parserDiv.innerHTML = txtData;
var posts = parserDiv.getElementsByTagName("entry");
for (var i = 0; i < posts.length; i++) {
var links = posts[i].getElementsByTagName("link");
for (var j = 0; j < links.length; j++) {
if (links[j].getAttribute("rel") == "alternate") {
makeContainer(i);
var title = links[j].getAttribute("title");
var link = links[j].getAttribute("href");
makeTitle(title, i);
makeLink(link, i);
var content = posts[i].getElementsByTagName("content");
if (content.length == 0) break;
var parserContentDiv = document.createElement("div");
parserContentDiv.innerHTML = content[0].innerText;
var imgs = parserContentDiv.getElementsByTagName("img");
if (imgs.length == 0) break;
var imgurl = imgs[0].getAttribute("src");
makeImage(imgurl, i);
break;
}
}
}
}
function makeContainer(num) {
var li = document.createElement("li");
li.style.padding = "0";
var div = document.createElement("div");
var table = document.createElement("table");
table.style.width = "100%";
var tr = document.createElement("tr");
var td1 = document.createElement("td");
td1.style.height = "72px";
td1.style.verticalAlign = "middle";
var td2 = document.createElement("td");
td2.style.width = "100%";
td2.style.verticalAlign = "middle";
var a1 = document.createElement("a");
a1.id = "popular-img-" + num;
a1.href = "javascript: void(0)";
a1.target = "_blank";
var a2 = document.createElement("a");
a2.id = "popular-title-" + num;
a2.href = "javascript: void(0)";
a2.target = "_blank";
a2.style.fontSize = "15pt";
td1.appendChild(a1);
td2.appendChild(a2);
tr.appendChild(td1);
tr.appendChild(td2);
table.appendChild(tr);
div.appendChild(table);
li.appendChild(div);
document.getElementById("popular-li-container").appendChild(li);
}
function makeLink(link, num) {
document.getElementById("popular-title-" + num).setAttribute("href", link);
document.getElementById("popular-img-" + num).setAttribute("href", link);
}
function makeTitle(title, num) {
document.getElementById("popular-title-" + num).innerText = title;
}
function makeImage(imgurl, num) {
var img = document.createElement("img");
img.style.border = "1px solid black";
img.style.width = "72px";
img.style.height = "72px";
img.style.backgroundImage = "url('" + imgurl + "')";
var image = new Image();
image.src = imgurl;
if (image.width > image.height)
img.style.backgroundSize = "auto 100%";
else
img.style.backgroundSize = "100% auto";
img.style.backgroundPosition = "50% 50%";
img.style.backgroundRepeat = "no-repeat"
img.style.display = "inline-block";
img.style.maxWidth = "none";
document.getElementById("popular-img-" + num).appendChild(img);
}
function getPopularData() {
var url = "/feeds/posts/default?orderby=published";
loadXML(url);
}
window.onload = getPopularData;
</script>
</ul>
</div>
我尝试更改此代码,但是没有使用 blogger 进行 JavaScript 编程的经验,我无法做很多事情。
最佳答案
要通过 XML 提要(在您的代码中)获取特定标签的博文,请使用此 url
http://yourBlogUrl/feeds/posts/default/-/LabelName
在您的代码中:
替换 var url = "/feeds/posts/default?orderby=published";
使用 var url = "/feeds/posts/default/-/game";
注意:博主标签区分大小写,“game”与“Game”不同
<div class="widget-slimecuty-popular-posts">
<ul id="popular-li-container" style="list-style-type: none; padding: 0;">
<script type="text/javascript">
function loadXML(url) {
var xmlRequest = new XMLHttpRequest();
xmlRequest.onreadystatechange = function () {
if (xmlRequest.readyState == 4 && xmlRequest.status == 200) {
parseResponse(xmlRequest);
}
};
xmlRequest.open("GET", url, true);
xmlRequest.send();
}
function parseResponse(xml) {
var txtData = xml.responseText;
var parserDiv = document.createElement("div");
parserDiv.innerHTML = txtData;
var posts = parserDiv.getElementsByTagName("entry");
for (var i = 0; i < posts.length; i++) {
var links = posts[i].getElementsByTagName("link");
for (var j = 0; j < links.length; j++) {
if (links[j].getAttribute("rel") == "alternate") {
makeContainer(i);
var title = links[j].getAttribute("title");
var link = links[j].getAttribute("href");
makeTitle(title, i);
makeLink(link, i);
var content = posts[i].getElementsByTagName("content");
if (content.length == 0) break;
var parserContentDiv = document.createElement("div");
parserContentDiv.innerHTML = content[0].innerText;
var imgs = parserContentDiv.getElementsByTagName("img");
if (imgs.length == 0) break;
var imgurl = imgs[0].getAttribute("src");
makeImage(imgurl, i);
break;
}
}
}
}
function makeContainer(num) {
var li = document.createElement("li");
li.style.padding = "0";
var div = document.createElement("div");
var table = document.createElement("table");
table.style.width = "100%";
var tr = document.createElement("tr");
var td1 = document.createElement("td");
td1.style.height = "72px";
td1.style.verticalAlign = "middle";
var td2 = document.createElement("td");
td2.style.width = "100%";
td2.style.verticalAlign = "middle";
var a1 = document.createElement("a");
a1.id = "popular-img-" + num;
a1.href = "javascript: void(0)";
a1.target = "_blank";
var a2 = document.createElement("a");
a2.id = "popular-title-" + num;
a2.href = "javascript: void(0)";
a2.target = "_blank";
a2.style.fontSize = "15pt";
td1.appendChild(a1);
td2.appendChild(a2);
tr.appendChild(td1);
tr.appendChild(td2);
table.appendChild(tr);
div.appendChild(table);
li.appendChild(div);
document.getElementById("popular-li-container").appendChild(li);
}
function makeLink(link, num) {
document.getElementById("popular-title-" + num).setAttribute("href", link);
document.getElementById("popular-img-" + num).setAttribute("href", link);
}
function makeTitle(title, num) {
document.getElementById("popular-title-" + num).innerText = title;
}
function makeImage(imgurl, num) {
var img = document.createElement("img");
img.style.border = "1px solid black";
img.style.width = "72px";
img.style.height = "72px";
img.style.backgroundImage = "url('" + imgurl + "')";
var image = new Image();
image.src = imgurl;
if (image.width > image.height)
img.style.backgroundSize = "auto 100%";
else
img.style.backgroundSize = "100% auto";
img.style.backgroundPosition = "50% 50%";
img.style.backgroundRepeat = "no-repeat"
img.style.display = "inline-block";
img.style.maxWidth = "none";
document.getElementById("popular-img-" + num).appendChild(img);
}
function getPopularData() {
var url = "/feeds/posts/default/-/LabelName";
loadXML(url);
}
window.onload = getPopularData;
</script>
</ul>
</div>
关于javascript - blogspot.com 同一标签的所有帖子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54844953/
语法荧光笔 3.0 在我的博客上不起作用。我直接使用网站上的最新版本。问题是: 如果我在我的代码中写了 #include,我就会得到它的结尾。没有文字环绕。博客链接是http://snacksfory
我将以下 Facebook iframe 作为模板的一部分: 主要特点是它使用 Blogspot 变量 data:post.url 作为用户可以“喜欢”的链接。不幸的是,最近 blogspot 决定
我正在尝试在此处的 blogspot 上实现媒体查询 - http://cricketbeta.blogspot.in/ 但是他们不工作,请看看并告诉我哪里错了 @media screen a
是否可以在博客中创建简码?像这样的东西: [item]contents[/item] 或 [img class='someClass']yourimagelink[/img] 最佳答案 简短的回答是:
当用户注册到我的网站时,应该如何为他们设置子域。 需要什么基础设施?我正在使用 Linux 服务器。 最佳答案 您可以为每个已知子域使用特定的 DNS( CNAME 或 A/AAAA )条目,也可以使
我想在 Blogspot 上创建一个按钮。按钮必须向我发送 blog.ID和 post.ID . 我可以得到post.ID与代码 但不知道如何访问blog.ID ? 最佳答案 我曾在 Blogspot
是否可以为特定关键字获取 BlogSpot 的 RSS 提要? 我已尝试使用以下 URL,但它们似乎不起作用。 Atom 1.0: https://blogname.blogspot.com/
我只想在我的 Google blogspot (blogger.com) 桌面版上加载 javascript 文件,因为我需要移动博客的精简版。 我经历了以下事情,但没有工作 ; ; ; 如何在 G
我在博客(blogspot)平台上有博客。查看主页时,每个帖子的分享按钮旁边的数字仅显示通过每个社交按钮分享主页的次数。 有没有办法显示每个帖子被分享的准确数量,而不仅仅是主页? 例如,http://
我成功地通过 javascript 更改了这些导航消息文本: 与: No posts for label: . No posts for quer
如何创建 301-Google 友好重定向,将访问者从 Blogger/Blogspot 网站重定向到我自己的域? 旧域帖子的访问者: http://example.blogspot.com/2014
我在我的博客上创建了一个新页面,我想在那里添加一个包含相同标签的所有帖子的列表。例如:标签名称是“游戏”,我正在寻找一个 JavaScript,它将列出所有带有包含标签“游戏”的图片的帖子。 这里我已
通过浏览器的“Inspect Element”选项,我可以通过 padding-left: 10px; 获得所需的效果。但是将它添加到 Theme > Edit HTML 中的元素并没有改变。我做错了
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我最近重新开始写博客,但我对 HTML/CSS 的细节有点生疏,遇到了一些小障碍。我希望这个背景图像居中并垂直重复,以便它“包围”内容,我认为我在 CSS 中所做的一切都是正确的,但背景消失在标题区域
我是新手!刚找到一个博客模板,当我安装它时,只出现 2 个社交媒体按钮(搜索和 rss),其他 2 个(facebook 和 twitter)没有出现 这是一个图像示例 https://lh3.goo
我想在离开我的网站时将一些外部链接重定向到我的特定页面。我之前尝试过 safelink,但它需要创建其他New Blog 来重定向所有外部链接。 我的意思是,例如: https://updated2a
我要如何删除上面的背景,因为它是帖子的重复图片? 最佳答案 .bg-photo{ background-image:none; } 使用此代码删除该背景图片 关于html - Blogspot。如
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我在http://westernwakefarmersmarket.blogspot.com/上有一个博客,我想将内容迁移到我正在开发的新MVC Web应用程序中。我正在尝试检索所有现有帖子,以将其迁
我是一名优秀的程序员,十分优秀!