javascript - 如何删除以前边框的元素

标签 javascript jquery html css

我有这个简短的例子:

link

<fieldset id="packType">
    <label>1</label>
    <label>2</label>
    <label>3</label>
</fieldset>
$("#packType label").on("click", function(e) {
    $(this).css({ "border": "2px solid #ff4141" });
});

我只想在您单击的元素上应用红色边框,其余元素应该有 border: none;。我怎样才能做到这一点?你能帮帮我吗?

最佳答案

你可以这样做

var $lbl = $("#packType label").on("click", function(e) {
  $lbl.css("border", "none");
  // set border none to all elements
  $(this).css("border", "2px solid #ff4141");
  // set border to clicked element
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<fieldset id="packType">
  <label>1</label>
  <label>2</label>
  <label>3</label>
</fieldset>

或使用 siblings() , 选择元素的 sibling

$("#packType label").on("click", function(e) {
  $(this).css("border", "2px solid #ff4141")
  //set border to clicked element
    .siblings().css("border", "none");
    // set border none to all siblings of clicked element
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<fieldset id="packType">
  <label>1</label>
  <label>2</label>
  <label>3</label>
</fieldset>

关于javascript - 如何删除以前边框的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35221064/

相关文章:

html - 缓存,浏览器缓存,怎么加呢?

javascript - 我的 AJAX 只触发一次,

javascript - 从多个来源导入

javascript - $.getJSON 返回数据后不会运行函数

javascript - 带有标题的 jquery 悬停覆盖

jquery移动按钮文本自动换行

javascript - 忽略 z-index 的移动 safari

javascript - 如何在 Angular Material 设计中包含网格布局?

javascript - 是否可以使用 Isotope 对列进行排序? (jQuery 库)

javascript - Angular 面板替换为单击事件