我试图通过Javascript通过选择其data-id属性并隐藏照片来动态隐藏页面上的特定照片。这是通过Ajax从TXT文件中获取ID,将其拆分为一个数组,然后使用jQuery隐藏具有该ID的img来实现的。请注意,此函数每3秒通过s​​etInterval传递一次...

    function getBlockedIDs() {
            var stringData = $.ajax({
                    url: "http://s61892.gridserver.com/zone/twitter2/blocked.txt",
                    async: false
            }).responseText;
            var blockedArray = new Array();
            blockedArray = stringData.split(",");
            var length = stringData.length
            for (var i = 0; i < length; i++) {
                    $('img.tweetphoto[data-id="' + stringData[i] + '"]').hide();
            }
    }


我的问题是,它不起作用!从控制台不会引发任何错误。我的代码有什么问题?这背后的想法是在不重新加载页面的情况下阻止特定(不合适的)照片。

任何帮助表示赞赏!

最佳答案

您确定要在for循环中使用stringData而不是blockedArray吗?如果是这样,也将分配更改为长度。

我的版本看起来像:

     function getBlockedIDs() {
        var blockedArray = $.ajax({
                url: "http://s61892.gridserver.com/zone/twitter2/blocked.txt",
                async: false
        }).responseText.split (/\s*,\s*/);
        for (var i = blockedArray.length; i--;) {
                $('img.tweetphoto[data-id="' + blockedArray[i] + '"]').hide();
        }
}

09-17 05:12