jQuery可调整大小不适用于动态创建的Div

Some_Dude

我正在动态创建div,并将它们设置为可拖动和可调整大小。可拖动的效果很好,但可调整大小的效果不好。我不知道为什么。这是我的代码:

function creatediv() {
  var div = document.createElement('div');
  div.className = "draggable resizable";
  div.innerHTML = "You can drag this, but you cannot Resize!! ";
  div.style.position = 'absolute';
  div.style.border = "medium solid black";
  div.style.width = "250px";
  document.getElementById("bdy").appendChild(div);
  $(".draggable").draggable({
    snap: true
  }); //have to call this to activate the jquery draggable effects on the newly created div.
  $(".resizable").resizable();
}
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<button onclick="creatediv()">Create new element !</button>
<div id="bdy"></div>

罗里·麦克罗森(Rory McCrossan)

该代码工作正常,您只是没有包括jQueryUI的样式表即可使其工作:

function creatediv() {
  var div = document.createElement('div');
  div.className = "draggable resizable";
  div.innerHTML = "You can drag this, but you cannot Resize!! ";
  div.style.position = 'absolute';
  div.style.border = "medium solid black";
  div.style.width = "250px";
  document.getElementById("bdy").appendChild(div);
  
  $(".draggable").draggable({
    snap: true
  });
  
  $(".resizable").resizable();
}
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

<!-- Add this \/ -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" />

<button onclick="creatediv()">Create new element !</button>
<div id="bdy"></div>

但是应该注意的是,您使用的是本机JS方法和jQuery的奇怪组合。如果您要承担加载jQuery的麻烦,则可以使用其简洁的方法。这是上面翻译成jQuery的逻辑:

$('.create').click(function() {
  var $div = $('<div />', {
    'class': 'draggable resizable foo',
    'text': 'You can drag and resize this!'
  }).appendTo('#bdy').draggable({
    snap: true
  }).resizable();
});
.foo {
  position: absolute;
  border: medium solid black;
  width: 250px;
} 
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" />

<button class="create">Create new element !</button>
<div id="bdy"></div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

jQuery / Javascript可拖动和可调整大小不适用于div克隆

按钮onClick不适用于此JS或以编程方式触发jquery可调整字体大小?

适用于可调整大小的组件的LayoutManager

jQuery-可调整的宽高比,仅适用于一个句柄

如何动态更改jquery ui可调整大小的选项?

jQuery可调整大小使我无法编辑div

在<div>中的jQuery可调整大小的画布

jQuery单击不适用于动态创建的项目

jQuery scrollTop 不适用于动态创建的 textarea

CSS 不适用于动态创建的内容 [jQuery]

可调整大小的动态Bootstrap列

jQuery onclick不适用于动态添加的div ID

jQuery事件不适用于动态添加的Div

如何创建可调整大小的MessageDialog

如何使div可调整大小

JS可调整大小的div

jQuery可调整大小的更改css

jQuery可调整大小的奇怪行为

使用CSS在div中自动调整图像大小仅适用于宽度,不适用于高度

jQuery .on不适用于动态内容

如何防止 jquery 可调整大小的 div 接收调整大小的单击事件

使用jQuery可调整大小的处理程序附加和调整div的大小

Jquery window.resize(event) => {} 适用于检查元素,但不适用于调整 chrome(或边缘)窗口的大小

如何使这个可调整大小的div从边缘调整大小?

如何制作可调整大小的 div,从侧面调整大小?

为什么窗口调整大小不适用于模态?

SVG调整大小不适用于Chrome

jquery 抖动不适用于 div

动态大小不可调整大小的数组