在URL大于某个数字的id参数的所有页面上隐藏项目

时间:2012-11-27 10:37:16

标签: javascript jquery

我们有以下javascript:

<script type="text/javascript">
    try {
        if (typeof jQuery === 'function') {
            jQuery(document).ready(function() {
                if (document.URL.indexOf('http://test.com/browse/ID-2007') === 0) {
                    jQuery('#test').hide();
                }
            });
    }
    } catch(err) {}
</script>

如何修复脚本,以便在jQuery('#test').Hide();

的任何地方执行ID > 2007

3 个答案:

答案 0 :(得分:1)

如果导致ID的URL部分始终相同,您可以删除该部分,将剩余部分解析为数字并进行检查:

var id = parseInt(document.URL.replace('http://test.com/browse/ID-', ''), 10);

if (id > 2007) {
   // Do your thing
}

如果需要更复杂的匹配,string.replace()方法也可以使用正则表达式进行匹配。

答案 1 :(得分:0)

var urlchunks = window.location.href.split('/');
var id = urlchunks[urlchunks.length-1].split('-');
if(parseInt(id[1]) > 2007) {
        jQuery('#test').hide();
      }

答案 2 :(得分:0)

使用JavaScript Regex查找您的ID:

var regex = new RegExp("ID-([\d]+)", "g");
var id = regex.exec(document.URL);
if (id[1] > 2007) jQuery('#test').hide();