Update builder.html
Browse files- builder.html +26 -20
builder.html
CHANGED
|
@@ -8,15 +8,19 @@
|
|
| 8 |
<link rel="stylesheet" href="https://unpkg.com/grapesjs/dist/css/grapes.min.css">
|
| 9 |
|
| 10 |
<!-- Your Custom CSS -->
|
|
|
|
| 11 |
<style>
|
| 12 |
.container {
|
| 13 |
-
|
|
|
|
| 14 |
width: 100%;
|
| 15 |
-
height:
|
| 16 |
}
|
| 17 |
-
.
|
| 18 |
-
|
| 19 |
-
|
|
|
|
|
|
|
| 20 |
}
|
| 21 |
</style>
|
| 22 |
</head>
|
|
@@ -36,17 +40,29 @@
|
|
| 36 |
pluginsOpts: {}
|
| 37 |
});
|
| 38 |
|
| 39 |
-
// Example of adding a
|
| 40 |
const blockManager = editor.BlockManager;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
blockManager.add('draggable-button', {
|
| 42 |
label: 'Draggable Button',
|
| 43 |
-
content: `<
|
| 44 |
attributes: { class: 'gjs-block-section' }
|
| 45 |
});
|
| 46 |
|
| 47 |
document.addEventListener('DOMContentLoaded', function() {
|
| 48 |
var button = document.querySelector('.draggable');
|
| 49 |
-
var container = document.querySelector('.container');
|
| 50 |
var offsetX = 0, offsetY = 0, isDragging = false;
|
| 51 |
|
| 52 |
button.addEventListener('mousedown', function(e) {
|
|
@@ -57,18 +73,8 @@
|
|
| 57 |
|
| 58 |
document.addEventListener('mousemove', function(e) {
|
| 59 |
if (isDragging) {
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
if (newLeft < 0) newLeft = 0;
|
| 63 |
-
if (newTop < 0) newTop = 0;
|
| 64 |
-
if (newLeft + button.offsetWidth > container.offsetWidth) {
|
| 65 |
-
newLeft = container.offsetWidth - button.offsetWidth;
|
| 66 |
-
}
|
| 67 |
-
if (newTop + button.offsetHeight > container.offsetHeight) {
|
| 68 |
-
newTop = container.offsetHeight - button.offsetHeight;
|
| 69 |
-
}
|
| 70 |
-
button.style.left = newLeft + 'px';
|
| 71 |
-
button.style.top = newTop + 'px';
|
| 72 |
}
|
| 73 |
});
|
| 74 |
|
|
|
|
| 8 |
<link rel="stylesheet" href="https://unpkg.com/grapesjs/dist/css/grapes.min.css">
|
| 9 |
|
| 10 |
<!-- Your Custom CSS -->
|
| 11 |
+
<!-- Your Custom CSS -->
|
| 12 |
<style>
|
| 13 |
.container {
|
| 14 |
+
display: flex;
|
| 15 |
+
justify-content: space-between;
|
| 16 |
width: 100%;
|
| 17 |
+
height: 100px;
|
| 18 |
}
|
| 19 |
+
.item {
|
| 20 |
+
flex: 1;
|
| 21 |
+
border: 1px solid #ccc;
|
| 22 |
+
padding: 10px;
|
| 23 |
+
text-align: center;
|
| 24 |
}
|
| 25 |
</style>
|
| 26 |
</head>
|
|
|
|
| 40 |
pluginsOpts: {}
|
| 41 |
});
|
| 42 |
|
| 43 |
+
// Example of adding a horizontal block with three items
|
| 44 |
const blockManager = editor.BlockManager;
|
| 45 |
+
blockManager.add('horizontal-block', {
|
| 46 |
+
label: 'Horizontal Block',
|
| 47 |
+
content: `
|
| 48 |
+
<div class="container">
|
| 49 |
+
<div class="item">Item 1</div>
|
| 50 |
+
<div class="item">Item 2</div>
|
| 51 |
+
<div class="item">Item 3</div>
|
| 52 |
+
</div>
|
| 53 |
+
`,
|
| 54 |
+
attributes: { class: 'gjs-block-section' }
|
| 55 |
+
});
|
| 56 |
+
|
| 57 |
+
// Example of adding a draggable button
|
| 58 |
blockManager.add('draggable-button', {
|
| 59 |
label: 'Draggable Button',
|
| 60 |
+
content: `<button class="draggable" draggable="true">Давай</button>`,
|
| 61 |
attributes: { class: 'gjs-block-section' }
|
| 62 |
});
|
| 63 |
|
| 64 |
document.addEventListener('DOMContentLoaded', function() {
|
| 65 |
var button = document.querySelector('.draggable');
|
|
|
|
| 66 |
var offsetX = 0, offsetY = 0, isDragging = false;
|
| 67 |
|
| 68 |
button.addEventListener('mousedown', function(e) {
|
|
|
|
| 73 |
|
| 74 |
document.addEventListener('mousemove', function(e) {
|
| 75 |
if (isDragging) {
|
| 76 |
+
button.style.left = (e.clientX - offsetX) + 'px';
|
| 77 |
+
button.style.top = (e.clientY - offsetY) + 'px';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 78 |
}
|
| 79 |
});
|
| 80 |
|