質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ドラッグ&ドロップ

コンピューターのGUIにおいて、バーチャルなものを「つかむ」ことによって選択し、別の場所や他のバーチャルなものの上に動かす行為、またはその行為に対応していることを指す。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

1回答

3205閲覧

jQuery 追加した要素をドラッグ&ドロップできない

MacKenzie

総合スコア11

ドラッグ&ドロップ

コンピューターのGUIにおいて、バーチャルなものを「つかむ」ことによって選択し、別の場所や他のバーチャルなものの上に動かす行為、またはその行為に対応していることを指す。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2019/09/05 10:35

前提・実現したいこと

動的に追加した要素をドラッグ&ドロップできるようにしたいです。
既存にある要素は動かすことができるのですが、動的に追加したものは動きません。
要素(css)は全く同じにしているので動くと思ったのですが...。
どなたかご教示お願いします!

該当のソースコード

JavaScript

1const board = document.getElementById('board'); 2const add_btn = document.getElementById('add_btn'); 3 4//付箋を作成 5(function(){ 6 add_btn.addEventListener('click', () => { 7 var sticky = document.createElement('div'); 8 var delete_btn = document.createElement('button'); 9 var text = document.createElement('textarea'); 10 sticky.classList.add("sticky"); 11 delete_btn.classList.add('delete_btn'); 12 text.classList.add('text'); 13 delete_btn.insertAdjacentHTML('afterbegin', "✖︎"); 14 sticky.appendChild(delete_btn); 15 sticky.appendChild(text); 16 delete_btn.onclick = function() { 17 board.removeChild(sticky); 18 }; 19 board.appendChild(sticky); 20 }); 21})() 22 23$(function() { 24$('.sticky').draggable(); 25});

HTML

1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <link rel="stylesheet" href="style.css"> 8 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.min.css"> 9 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 10 <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.11.0/jquery-ui.min.js"></script> 11 <title>付箋アプリ</title> 12</head> 13<body> 14 <div class="hero"> 15 <div class="hero-body"> 16 <div class="container"> 17 <button id="add_btn">追加</button> 18 </div> 19 </div> 20 </div> 21 <div id="board"> 22 23 </div> 24 <div class="sticky"> 25 <textarea class="text" cols="30" rows="10"></textarea> 26 </div> 27 <script src="main.js"></script> 28</body> 29</html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

要素を追加したあとに当該要素を.draggable()するか、要素を追加したあとにdisable()して再設定するかどちらかで出来そうな気がします。

【Draggable Widget | jQuery UI API Documentation】
https://api.jqueryui.com/draggable/#method-destroy

投稿2019/09/05 19:59

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問