检查/查找 url 中是否有数组的任何单词

Check / find in url if the there're any word of the array

本文关键字:数组 任何单 是否 查找 url 检查      更新时间:2023-09-26

嗨,伙计们,我做了这个:

$("a").click(function() {
    var x = $(this).attr("href");
    var Site_dont_go = ["#", "youtube.com"];
    var check = jQuery.inArray(x, Site_dont_go);
    if(check > -1 ){
    } else {
        window.open('goto.php?url='+x);
        return false;
    }
});

它工作正常,但如果 URL 像 (youtube.com/other_code) 它不会被检查

请帮助我

您需要在 URL 本身内搜索才能找到域。您可以使用indexOf执行此操作:

$("a").click(function() {
    var x = $(this).attr("href");
    var Site_dont_go = ["#", "youtube.com"];
    var validUrl = true;
    $.each(Site_dont_go, function(i, item) {
        if (x.indexOf(item) != -1) {
            validUrl = false;
        }
    });
    if (!validUrl) {
        window.open('goto.php?url=' + x);
        return false;
    }
});

请注意,搜索#并不是一个好主意,因为您最终会排除任何带有片段的 URL,例如。 http://www.microsoft.com/#foo