Javascript 循环遍历页面中的对象,若页面包含键,则追加值
我有一个充满链接的页面。我想在底部放一个小jquery,查找特定的URL,或者如果在内容中找到URL,或者如果当前页面的规范链接(包含在meta中)匹配,则在页面底部为每个URL添加一个小标记。到目前为止,我有:Javascript 循环遍历页面中的对象,若页面包含键,则追加值,javascript,jquery,arrays,object,Javascript,Jquery,Arrays,Object,我有一个充满链接的页面。我想在底部放一个小jquery,查找特定的URL,或者如果在内容中找到URL,或者如果当前页面的规范链接(包含在meta中)匹配,则在页面底部为每个URL添加一个小标记。到目前为止,我有: <script type="text/javascript"> var obj = { "apple.php":"apple_pixel_url", "banana.php":"banana_pixel_url", "carrot.php":"car
<script type="text/javascript">
var obj = {
"apple.php":"apple_pixel_url",
"banana.php":"banana_pixel_url",
"carrot.php":"carrot_pixel_url"
};
$.each( obj, function( key, value ) {
$( "html:contains(key)" ).append('<img src="'+value+'">');
});
</script>
var obj={
“apple.php”:“苹果像素url”,
“banana.php”:“banana\u pixel\u url”,
“carrot.php”:“carrot\u像素\u url”
};
$。每个(对象、功能(键、值){
$(“html:contains(key)”).append(“”);
});
这总是附加所有三个值,所以我显然做错了什么。我想理想情况下,我会只看“a”链接加上任何匹配的标签
<link rel="canonical" href="CANONICAL_URL" />
执行此操作的最佳方法是什么?您正在传递一个静态字符串作为选择器,其中as'key'是一个变量。
$( "html:contains("+key+")" ).append('<img src="'+value+'">');
$(“html:contains(“+key+”))。追加(“”);
您正在传递一个静态字符串作为选择器,其中as'key'是一个变量。 $( "html:contains("+key+")" ).append('<img src="'+value+'">');
$(“html:contains(“+key+”))。追加(“”);
您还可以使用以下语法附加到各个链接:
$("a[href$='"+key+"']").append('<img src="'+value+'">');
$(“a[href$=”“+key+”]);
您还可以使用以下语法附加到各个链接:
$("a[href$='"+key+"']").append('<img src="'+value+'">');
$(“a[href$=”“+key+”]);
它总是附加三个链接,因为它在javascript中查找值!仅在
这里有个小问题:它总是附加三个链接,因为它在javascript中查找值!仅在
这里有一个小问题:如果一个页面有多个类似的URL,如
apple.php
?在这种情况下,我只希望它附加一次。如果一个页面有多个类似的URL,如apple.php
?在这种情况下,我只希望它附加一次。这肯定是解决问题的更好方法。不过,我不想附加到链接上,我想附加到正文。我想附加到正文或html。否则这就行了。如何附加到页面的末尾而不是匹配的标记?是否只需要对链接的第一个实例执行此操作?或者对于链接的所有实例?例如,如果apple.com链接显示了23次,那么循环是否算作一次?或23?每个链接仅一次。如果一个apple.php链接显示了20次,它应该只追加一次。这肯定是解决这个问题的更好方法。我不想追加到链接,我想追加到正文。我想追加到正文或html。否则这就行了。如何附加到页面的末尾而不是匹配的标记?是否只需要对链接的第一个实例执行此操作?或者对于链接的所有实例?例如,如果apple.com链接显示了23次,那么循环是否算作一次?或23?每个链接仅一次。如果一个apple.php链接显示20次,它应该只追加一次。哦,所以每次都是正数,因为它被解析为“”,这是有道理的!哦,所以每次都是正数,因为它被解析为“”,这是有道理的!问题是规范链接标记在标题中。@pg.更新答案以获得完整解决方案。问题是规范链接标记在标题中。@pg.更新答案以获得完整解决方案。