jQuery DOM选择器问题

时间:2011-10-05 08:10:26

标签: javascript jquery

我有一个jQuery代码如下;

$("#"+iframeId).attr("src",url); //works perfect
$("a[target="+iframeId+"]").attr("href", url); //does not return anything. not sure why?

iframeId获得“swcontent”

<a target="swcontent" href="xyz.html" class="standardMenu_on">Link</a>

在Firebug检查员中,如果我写

document.getElementsByTagName(“a”)[0] .getAttribute(“target”)它确实找到目标“swcontent”

现在在我的一个JS中,我有;

jQuery.extend = jQuery.fn.extend = function() {
    // copy reference to target object
    var target = arguments[0],
        a = 1;

    // extend jQuery itself if only one argument is passed
    if ( arguments.length == 1 ) {
        target = this;
        a = 0;
    }
    var prop;
    while (prop = arguments[a++])
        // Extend the base object
        for ( var i in prop ) target[i] = prop[i];

    // Return the modified object
    return target;
};

这会导致任何问题吗?如果是,我该如何解决这个问题(我的范围可能有限,无法完全更改代码)

2 个答案:

答案 0 :(得分:0)

如果你的iframeId是'swcontent',那么它应该可行 我准备了一个简单的例子来做你想做的事情 并且css类实际上被添加到锚标记

var iframeid = "swcontent";
$('a[target="' + iframeid + '"]').addClass('loadsInIframe');

在这里查看: http://jsfiddle.net/saelfaer/pWgWZ/1/

答案 1 :(得分:0)

如果用'; - )

包围变量,它的效果非常好
$("a[target='"+iframeId+"']").attr("href", url);