マウスでの文字列の位置?

私は、jQueryを使用してドロップ時に
タグを追加する文字列内の位置を見つけようとしています。

私がやっていることは、ホバー上の段落のHTMLを文字列に変換するか、テキスト領域に変換することです。

HTMLをカーソルの位置に追加する方法はありますか?

ベストアンサー

X座標とY座標が指定されている場合は、
document.elementFromPoint(x、y)を使用して要素を取得できます。それ以外の場合は、この回答をご覧ください。

だから、XとYを与えましょう。次に:

function appendElementAt(img, x, y){
    var elem = document.elementFromPoint(x, y);
    var pos = elem.getBoundingClientRect();   //Calculate position of element
    var topPos = y - pos.top;                //Calculate top position
    var leftPos = x - pos.left               //Calculate left positon

    elem.style.position = "relative";
    img.style.position = "absolute";
    img.style.top = topPos;
    img.style.left = leftPos;
    elem.appendChild(img);
}
// Usage:

var img = document.createElement("img");
appendElementAt(img, x, y);

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です