首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery .remove()发行

jQuery .remove()发行
EN

Stack Overflow用户
提问于 2020-05-14 07:06:48
回答 3查看 67关注 0票数 0

我试着用JS和jQuery做了一个小游戏(注意:我是这两种语言的初学者),我做了一个函数来删除你的保存。我用一些短信来确认他们的行动。当我去删除它的时候,它就不会了。这是我的HTML

代码语言:javascript
复制
function wipeSave() {
  p.innerHTML = "Are you sure you want to wipe(delete) your save? <button onclick='deleteSave()'>Yes</button> <button onclick='leave()'>No</button>";
  $('.settings').append(p);
}

function leave() {
  $('.settings').remove(p);
}

function deleteSave() {
  localStorage.setItem('coins', 0);
  localStorage.setItem('cps', 0);
  localStorage.setItem('cpc', 1);
  localStorage.setItem('cpcPrice', 25);
  localStorage.setItem('cpsPrice', 50);
  $('.settings').remove(p);
  load();
  //Everything was declared in another JS file that is loaded before this one.
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="hide settings">
  <button onclick="wipeSave()">Wipe your save (think about it twice, you won't be able to get it back) 
      </button>
</div>

我尝试过其他的解决方案,但都没有奏效。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-05-14 07:11:30

变量p仅绑定到wipeSave函数的作用域!因此,当您想从您的<p>元素中删除.settings标记时,您需要如下所示选择它:

代码语言:javascript
复制
$('.settings').find('p').remove(); // find the <p> tag in your settings container and remove it
票数 0
EN

Stack Overflow用户

发布于 2020-05-14 07:17:57

您应该在<p id="test"></p>之外创建一个p标记。

并使用$('.settings p').remove();删除p标记。

代码语言:javascript
复制
var p = document.getElementById("test");
function wipeSave() {
  p.innerHTML = "Are you sure you want to wipe(delete) your save? <button onclick='deleteSave()'>Yes</button> <button onclick='leave()'>No</button>";
  $('.settings').append(p);
}

function leave() {
  $('.settings').remove(p);
}

function deleteSave() {

  localStorage.setItem('coins', 0);
  localStorage.setItem('cps', 0);
  localStorage.setItem('cpc', 1);
  localStorage.setItem('cpcPrice', 25);
  localStorage.setItem('cpsPrice', 50);
$('.settings p').remove();  
  load();
  //Everything was declared in another JS file that is loaded before this one.
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p id="test"></p>
<div class="hide settings">
  <button onclick="wipeSave()">Wipe your save (think about it twice, you won't be able to get it back) 
      </button>
</div>

票数 1
EN

Stack Overflow用户

发布于 2020-05-14 07:12:20

试试这个..。

取代

代码语言:javascript
复制
$('.settings').remove(p);

代码语言:javascript
复制
$('.settings').remove();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61791274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档