让jQuery返回文本而不是HTMLScriptElement

时间:2014-07-14 07:38:55

标签: javascript jquery

我正在尝试创建一个脚本来计算我网站上有多少外部脚本。

$( document ).ready(function() {
    $tags = $("script[src*='http']");
    $.each($tags, function(index, value) { console.log("INDEX: " + index + " VALUE: " + value ); });
});

索引按预期工作,但打印到控制台的值为[object HTMLScriptElement]。如何修改脚本以打印src属性的值?

我已经尝试过这两个变化:

  1. $("script[src*='http']")$("script[src*='http']").attr('src')
  2. valuevalue.toString()

3 个答案:

答案 0 :(得分:2)

使用$(value).attr("src")value.src获取脚本代码的src属性,请更改为:

...
$.each($tags, function(index, value) { 
    console.log("INDEX: " + index + " VALUE: " + $(value).attr("src") ); 
    //OR
    console.log("INDEX: " + index + " VALUE: " + value.src ); 
});
...

答案 1 :(得分:1)

$(document).ready(function () {
    $tags = $("script[src*='http']");
    $.each($tags, function (index, value) {
       console.log("INDEX: " + index + " VALUE: " + $(value).attr("src") );
    });
});

演示:http://jsfiddle.net/Bh6Vz/1/

答案 2 :(得分:0)

试试这个

$( document ).ready(function() {
$tags = $("script[src]");
$.each($tags, function(index, value) { console.log("INDEX: " + index + " VALUE: " + value  ); });
});