微博帖子一键收藏

在微博网页端,为每个帖子创建一个收藏按钮,来试图解决帖子收藏的成本较高的问题。

< Отзив за 微博帖子一键收藏

Въпрос/коментар

§
Публикуван на: 11.02.2024
Редактиран на: 11.02.2024

小修了一下代码,现在收藏键可以正常生成了,原理就是在updateFavoriteButton()里增加了一个按键框是否存在的判断,如果不存在就生成一个然后重复一遍流程,应该还有很大的优化空间,不过现在已经能凑合用了。
主要存在的问题就是因取消收藏等原因而直接跳进屏幕内的微博必须先移出屏幕再回来才能生成,不过我懒得再改了,留给作者看吧(

把106行左右的

                    let buttonNode = node.querySelector(`button[class="${buttonClassName}"]`);

                    if (blogCache[blogID] == null) {
                        getFavoriteStatus(blogID).then(() => {
                            updateButtonText(blogID, buttonNode)
                        });

                    } else {
                        updateButtonText(blogID, buttonNode);
                    }

替换成

                    let buttonNode = node.querySelector(`button[class="${buttonClassName}"]`);

                    if (buttonNode) {
                        if (blogCache[blogID] == null) {
                            getFavoriteStatus(blogID).then(() => {
                                updateButtonText(blogID, buttonNode)
                            });

                        } else {
                            updateButtonText(blogID, buttonNode);
                        }
                    } else {
                        node.setAttribute('data_a656_value1', false.toString());
                        placeFavoriteButton(node);
                        i--;
                    }

就OK了。

另外建议给收藏键加个margin-right: 3px;,个人感觉跟关注键无缝相接不太好看。

§
Публикуван на: 26.03.2024

收到!

§
Публикуван на: 05.04.2024

我小修了一下代码,看上去是比以前好用些了,至于你贴出的两段代码,以及按钮间隔,要等下回空闲了。

Публикувайте отговор

Влезте, за да публикувате отговор.