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

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

ただいまの
回答率

88.82%

[jquery resizable]子要素を操作して親要素を広げたい

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 495

nkd

score 10

前提・実現したいこと

jQuery UI で提供されているresizableについてです。

<div id="item" class="item">
<i class="right-bottom material-icons">stars</i>
<div class="text_com"><p>テキスト</p></div>
</div>

子要素(right-bottom)にresizableを当て、子要素が操作された時、子要素の大きさはそのままで
親要素(item)の枠が広がる様にする為の方法はりますか?

該当のソースコード

<html lang="ja">
<head>
<meta charset="UTF-8">
<title>test</title>

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.0/themes/base/jquery-ui.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">

<style>
.box{
  width:300px;
  height:300px;
  border:solid;
  margin-top:20px;
}
.item {
  border:solid 2px;
  width:100px;
  height:50px;
  display:inline;
  position:absolute;
  user-select:none;
  -ms-user-select:none;
  -webkit-user-select: none;
}
.text_com{
  display:flex; 
  width:100%; 
  height:100%; 
  align-items:center;
}
.left-top{
  position:absolute;
  top:-17px;
  left:-17px;
  width:15px;
  height:15px;
}
.right-bottom{
  position:absolute;
  bottom:-12px;
  right:-12px;
  width:15px;
  height:15px;
}
</style>

<script>
$(function() {
  $('.item').draggable({
    containment: 'parent',
    scroll: false,
  });

  $('.right-bottom').resizable({
  });
});
</script>

</head>
<body>
<table>
  <tr>
    <td>
      <div id="box" class="box">
        <div id="item" class="item">
          <i class="left-top material-icons">stars</i>
          <i class="right-bottom material-icons">stars</i>
          <div class="text_com"><p>テキスト</p></div>
        </div>
      </div>
    </td>
  </tr>
</table>
</body>
</html>

試したこと

resizableに用意されているオプション(alsoResizeなど)、メソッド、イベントは全て試しました。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • m.ts10806

    2019/06/15 17:15

    >子要素(icon)をドラッグして
    1個キーワード出ましたね。ちゃんと試してないですがたぶんこれです。
    resizableは指定した要素自体の大きさを変えるので「リサイズのキーにしたい要素」はあくまで「ドラッグという操作」のみだと思います。

    キャンセル

  • m.ts10806

    2019/06/15 17:17

    というか星アイコンの表示位置をもう少し内側にすればそれっぽく見えなくもない気がしますが、それじゃダメですよね?

    キャンセル

  • nkd

    2019/06/15 17:33

    ご返信ありがとうございます。
    > resizableは指定した要素自体の大きさを変える
    仰る通りだと思います。
    その上で、子要素のアイコンをドラッグ操作すると親要素がresizeされる方法がresizableで実現可能かどうか、可能であればその方法が知りたかったです。
    アイコンの位置をズラしても、親要素の枠の端に反応しない領域ができてしまう為、残念ですがそれではダメです。

    キャンセル

まだ回答がついていません

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

  • ただいまの回答率 88.82%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る