簡體   English   中英

jQuery在find()選擇器中動態使用當前域

[英]jQuery using current domain dynamically in find() selector

我想搜索的字符串$div ,而不是選擇a標簽的腳本是在域。 這有效,靜態進入域...

        $div.find("a:not([href*=mywebsite])").attr('rel', function(i, val) {
            ...
            return val;
        });

但這行不通...

        var $this_domain = window.location.hostname;
        // $this_domain.toString();
        $div.find("a:not([href*=" + $this_domain + "])").attr('rel', function(i, val) {
            ...
            return val;
        }

有什么想法為什么這行不通嗎?

提前致謝。

$this_domain最有可能是至少包含一個的字符串. 但是. 在jQuery選擇器中有特殊含義 在查找元素之前,您需要對進行轉義 嘗試這個:

$div.find("a:not([href*=" + $.escapeSelector($this_domain) + "])")
  .attr( ... );

此外,僅指出一點,您沒有將值包裝在引號中,這可能會導致錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM