为什么Jquery使用window url预先添加img src?

时间:2014-01-14 16:38:27

标签: javascript jquery

所以我有这个简单的代码:

var openPopUp = function(_type, _src) {
    $(_type).bind('click', function(e) {
        e.preventDefault();
        $('#img_pop_up').bPopup({
            onOpen: function() {
                console.log(document.getElementById("jpg_pop_up")['src']);
                $("#jpg_pop_up").attr("src",_src);
                /*$("#jpg_pop_up").attr("src","http://freefever.com/stock/2013-abstract-hd-wallpaper.jpg");*/
            }
        });
    });
}

注释中提到的行工作正常,但是当我将变量作为_src传递时,它会使用window.location url预先添加src,然后尝试获取图像。它就像http://myserver.com/http://image_url/任何想法都是为什么?我正在通过绝对网址。当我执行console.log(_src)时,它会打印完整的URL,但是当我打印

console.log(document.getElementById("jpg_pop_up")['src']);

这会打印我的窗口位置网址!它应该是null。

当我对url的路径进行硬编码时,它可以正常工作,但是当我使用变量传递路径时,它会将其视为相对路径。

1 个答案:

答案 0 :(得分:0)

试试这个:

console.log(document.getElementById('jpg_pop_up').getAttribute("src"));

这里的重要区别是src 属性包含您提供的内容,但src 属性包含完全解析的网址