单击时清除 <p> 标记中的默认文本
Clear default text from <p> tag when clicked on
用这个小提琴:http://jsfiddle.net/2mw4c/12/
我希望能够清除<p>
标签中的文本,然后开始键入。我遇到的问题是,当您单击时,<p>
标签被清除,我无法输入它。
JavaScript:
$("p").on("mousedown", function(e){
if($(this).text() === "Click"){
$(this).text("").focus();
}
});
.HTML:
<div class="content" contenteditable="true"><p>Click</p></div>
我需要能够做什么才能开始在标签中写入?
我不知道
你想实现什么,但是当我将contenteditable
移动到p
元素时,它对我有用。
我从您的评论中得到的印象是您希望在标记中保留当前结构。似乎由于p
是空的,div
正在崩溃。我已经更新了我的小提琴链接。
http://jsfiddle.net/nyaray/2UJRS/2/
小提琴演示
$("p").on("mousedown", function (e) {
var that = $(this);
var txt = that.text();
if (txt === "Click") {
height = that.css('height');
that.css('height', height).text("").focus();
} else if ((txt).length) {
that.css('height', 'inherit');
} else if (txt.length === 0) {
that.css('height', height);
}
});
您可以设置最小高度和宽度。您需要指定大小,否则,p-tag内将没有可点击的区域,因为in是内联元素。
http://jsfiddle.net/MrPolywhirl/WZg6H/
div.content>p {
min-width: 1em;
min-height: 1em;
background: #EEF;
}
我认为您正在尝试<p>
标签用作输入,因此请检查以下更改:
试试这个:
http://jsfiddle.net/2mw4c/22/
相关文章:
- 或者在表单上选择默认选项文本(选择1)
- 单击文本时删除文本框的默认数据
- 在文本区域禁用javascript定义的keydown事件并恢复默认行为
- 在AngularJS Dropdownlost中设置默认文本选项
- 如何为显示jquery滑块值的文本框设置默认值
- 我可以为高图表中的所有文本设置默认颜色吗?
- 是否覆盖网站上文本输入区域的默认移动设备键盘?(HTML/JS/jQuery)
- knockout.js、knockout可排序和默认文本
- 文本框的一部分为只读,具有默认值
- Sharepoint 2013 Javascript ClientPeoplePicker默认值文本
- 在发送之前,点击按钮清除多个输入[类型=文本]默认值
- 如何在附有日期选择器的文本框中设置默认日期(以这种格式“dd/mm/yy”)
- 单击时清除
标记中的默认文本
- 如何在 RaphaelJS 中根据需要为文本创建默认属性并链接其他属性
- 如果文本框为空,则将其返回到默认值
- 清除输入,模糊文本区域和默认值(如果字段为空)
- 如何将默认文本添加到搜索栏
- 如何在 WP 中的表单中向输入字段添加默认文本
- 设置输入文本默认值,并选择选项值,然后禁用
- React输入文本默认值和onblur函数使输入文本只读