0

私はそのjqueryスクリプトを持っています:

function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}

var dynamicContent = getParameterByName('utm_term');

 $(document).ready(function() {

            if (dynamicContent == 'buy') {
        $('#buy').show();
    }

    else {
        $('#default-content').show();
    }
});

これは次のように機能します: utm_termURL のパラメーターが等しい場合'buy'、ブロックid="buy"が表示されます。パラメータが空であるか、URL にパラメータがない場合は、block withid="default-content"が表示されます。

そして質問があります: URL ( ) のそのパラメータが必要ですが、utm_term単語と同じではなく、それを持っているだけです。

URL に があればutm_term=smth_buy#default-contentが表示されます#buy

何か案は?

4

1 に答える 1

0

たぶん、正規表現を使用する必要があります。

if (dynamicContent.match(/buy/)) {
    $('#buy').show();
}

else {
    $('#default-content').show();
}

大文字と小文字を区別しない場合:

if (dynamicContent.match(/buy/i)) {
    $('#buy').show();
}

else {
    $('#default-content').show();
}

( iflag はパターンの大文字と小文字を区別しないように設定し、bUYと同じように一致しますBUY)

于 2016-07-05T12:06:51.937 に答える