我正在尝试制作一个chrome-extension弹出窗口,用户可以添加特定选项卡的URL或删除一个或删除所有。删除一切工作正常,添加URL也可以。但是,删除一个链接'根本没有工作,我真的一直在与该部门斗争。我希望有人可以帮我解决这个问题,因为我不知道问题所在。以下是文件:
popup.js:gist.github.com/kobrajunior/4852f85ae18cfb9edbe542a820b8c107
popup.html:gist.github.com/kobrajunior/1c26691734c19391c62dc336ed2e1791
manifest.json:gist.github.com/kobrajunior/78acda830c2d1c384333542422f1494d
我在其他帖子上看过这可能是因为getElementsByClassName
没有回复真实的'你可以使用函数操作事物的数组,如果这是真的,那么我可以使用各种工具来解决这个问题。
' X'按钮不起作用:
清除所有按钮按预期工作:
答案 0 :(得分:0)
在removeMe()
函数中,您必须从其父元素中删除DOM元素。像这样:
function removeMe(i) {
// remove it from the DOM
var list = document.getElementsByClassName('items');
list[i].parentNode.removeChild(list[i]);
list.splice(i, 1);
// remove it from chrome-storage
chrome.storage.local.get({urlList:[], titleList:[]}, function(data) {
urlList = data.urlList;
titleList = data.titleList;
urlList.splice(i, 1);
titleList.splice(i, 1);
// update chrome storage
saveList();
});
}
或者您可以使用主list
ID:
document.getElementById("list").removeChild(list[i]);