jquery - 可调整大小的左右箭头样式

标签 jquery css jquery-ui jquery-ui-resizable

我正在尝试向可调整大小的 div 添加左右两个圆圈并设置它们的样式。我添加了它们,看起来没问题,但是当我尝试调整左侧或右侧的大小时,圆圈在同一位置保持不变。这个想法是用可调整大小的 div 移动圆圈。你能帮帮我吗?

$("#resizable").resizable({
  containment: "#image-container-step2",
  handles: "e,w"
});
#resizable {
  background: red;
  position: absolute;
  height: 10px;
  width: 200px;
  top: 100px;
  /*left: 100px;*/
}

#resizable .resizers {
  width: 100%;
  height: 100%;
  border: 3px solid #4286f4;
  box-sizing: border-box;
}

#resizable .resizers .resizer {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: white;
  border: 3px solid #4286f4;
  position: absolute;
}

#resizable .resizers .resizer.left {
  left: -5px;
  top: -7px;
  cursor: w-resize;
  /*resizer cursor*/
}

#resizable .resizers .resizer.right {
  left: 190px;
  top: -7px;
  cursor: e-resize;
  /*resizer cursor*/
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.3/jquery-ui.min.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.11.3/themes/smoothness/jquery-ui.css" />
<div id="resizable">
  <div class='resizers'>
    <div class="resizer left"></div>
    <div class="resizer right"></div>
  </div>
</div>

最佳答案

不是给 .resizer.right left: 190px 而是给它 right: -5px。现在,如果您调整大小,它将与该行一起。希望对你有帮助

代码已更新,现在也可以用圆圈调整大小

$("#resizable").resizable({
  containment: "#resizable",
  handles: "e,w"
});
#resizable {
  background: red;
  position: absolute;
  height: 10px;
  width: 200px;
  top: 100px;
  /*left: 100px;*/
}

#resizable .resizers {
  width: 100%;
  height: 100%;
  border: 3px solid #4286f4;
  box-sizing: border-box;
}

#resizable .resizers .resizer {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: white;
  border: 3px solid #4286f4;
  position: absolute;
}
#resizable .ui-resizable-handle{
    width: 31px;
    height: 31px;
    top: 50%;
    transform: translateY(-50%);
}
#resizable .resizers .resizer.left,#resizable .resizers .resizer.right{
top:50%;
transform:translateY(-50%);
}
#resizable .resizers .resizer.left {
  left: -5px;
  cursor: w-resize;
  /*resizer cursor*/
}

#resizable .resizers .resizer.right {
  right: -5px;
  cursor: e-resize;
  /*resizer cursor*/
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.3/jquery-ui.min.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.11.3/themes/smoothness/jquery-ui.css" />
<div id="resizable">
  <div id="resizers" class='resizers'>
    <div class="resizer left"></div>
    <div class="resizer right"></div>
  </div>
</div>

关于jquery - 可调整大小的左右箭头样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54921285/

相关文章:

javascript - 当复选框处于事件状态时,jQuery 禁用其他行中的输入

javascript - $ ('#id1' ).html ("") 从 DOM 中删除 #id1 的所有子级,或者它们仍然存在?

javascript - 当存在更多 slider 时,jquery ui slider 最后一个句柄值

jquery - 如何使用 JQuery 处理大量重复的 UI 元素

jQuery 添加多个 CSS 变量

javascript - 包装器不随内容扩展

javascript - CSS 预加载在 Google Chrome 之外不起作用

html - 将文本放在底部,但让它留在文档流中

javascript - 从另一个 div 的内部拖放一个 div

javascript - 需要正则表达式来评估连字符分隔值,其中第一个限制应始终小于第二个限制