javascript - jquery ui draggable 自动改变宽度

标签 javascript jquery html css jquery-ui

我正在关注 jquery ui docs使 div 可拖动和可排序。它确实适用于拖动和排序。但是,当我将 div 从可拖动变为可排序时,可拖动的宽度会发生变化,并且不会保留其应有的宽度。

这是 demo

js:

$(function() {
    $('#grid-main_content').sortable({
        revert:true
    });

    $('#block-list .block').draggable({
        connectToSortable: '#grid-main_content',
        helper: 'clone',
        revert:'invalid'
    });
})

如果我检查我拖动到可排序的元素,我可以看到内联样式被赋予了具有宽度的可拖动 block (通过 jquery)。

如何保持 block 已有的样式?谢谢。

最佳答案

您可以使用 draggables' start event , 维护助手

的特定风格
$('#block-list .block').draggable({
    connectToSortable: '#grid-main_content',
    helper : 'clone',
    revert : 'invalid',
    start  : function(event, ui){
        $(ui.helper).addClass("ui-helper");
    }
});

CSS:

.ui-helper {
    width: 100% !important;
}

Demo

关于javascript - jquery ui draggable 自动改变宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32164581/

相关文章:

javascript - 读取 HTML 对象标签中的数据

javascript - 你如何解决 yarn.lock 中的 Git 冲突

javascript - 更改 API 数据输出的区分大小写

html - Bootstrap Fixed Header 元素不会出现在移动设备上

jquery - 有效的 jquery 代码不起作用 - 父/子问题

javascript - 插入新记录之前在 JavaScript 中重复检查

javascript - 如何在 HTML + jQuery + CSS 中显示弹出窗口?

javascript - 慢动作中的 jquery window.resizeTo

javascript - 在本地主机上查看页面时 jQuery 脚本不起作用

html - 使屏幕上始终可见两个不同大小的div