1. ホーム
  2. Web制作
  3. HTML/Xhtml

divにcontentEditable=trueを設定すると、内容をリセットした後にカーソルを配置できない。

2022-01-07 22:39:38

コメント機能を作っていて、顔文字にコメントできるようにしたいので void QuickSort(int* array,int left,int right) { assert(array); if(left >= right)// means a group has been completed { return; } int index = PartSort(array,left,right);//the position of the pivot QuickSort(array,left,index - 1); QuickSort(array,index + 1,right); } 属性が矢面に立ってしまいました...。

まず、コメント欄はこのような感じです。


入力が制限を超えた場合、ユーザーが入力した後に内容をクリアする。

これはこれでいいのですが...コンテンツをクリアした後、実際にカーソルが上に走ってしまうので、頭が痛いです。

いろいろ探した結果、解決策を見つけました!早速、そのコードを紹介します。

int PartSort(int* array,int left,int right)
{
	int& key = array[right];
	while(left < right)
	{
		while(left < right && array[left] <= key)
		{
			++left;
		}
		while(left < right && array[right] >= key)
		{
			--right;
		}
		swap(array[left],array[right]);
	}
	swap(array[left],key);
	return left;
}


いずれもネイティブイベントを使用するので while(left < right && array[left] <= key) オブジェクトを作成します。

以上、divにcontentEditable=trueを設定すると、コンテンツをリセットした後にカーソルが正しく配置されない問題の解決方法について説明しました。div set contentEditable=trueについては、スクリプトハウスの過去記事を検索していただくか、引き続き下記の関連記事をご覧ください。