1.当我们个  div 设置了 contenteditable = "true" 这个块状元素就可以编辑了, 如果要实现 placeholder 直接写上去是没有效果的

<div contenteditable="true"  placeholder="please write infomation"></div>//没有效果

2.可以添加样式来实现

*[contenteditable="true"]:empty:before{
content:attr(placeholder);
color: #A9A9A9;
}

这段代码匹配 属性 contenteditable="true" 的元素类容为empty时添加:before伪元素

  attr(placeholder)获取属性placeholder的值赋值给content这样就可以模拟的实现文本框中 placeholder 属性,

3.在ipone机中首次显示时是ok的,当你输入内容后再清空发现 并没有显示再显示placeholder的内容,这是因为这个可编辑的块这时不是空,还有换行符,

如果我们有使用jquery,zepto等我们可以拿到这个元素的text();跟这个元素再赋值“”;

如果我们用js,用innerText去获取块元素的值,你会发现不管你值是否为空都是true,就没有办法判断我什么时候是空(只有在ipone中才这样),

然后我就去看了下jquery中的text()是怎么实现的,它用了一个textContent属性,用这个属性就可以判断到

4.textarea中用 placeholder 属性写入过多文字有2行(可输入药品名称、数量、单位,例:红螺霉素,2盒。保健品类请选择食品。) ,当输入文字然后清空发现只显示一行文字,晕

然后我用jq在输入框input事件时用 element.attr("placeholder","123可输入药品名称、数量、单位,例:阿莫西林颗粒,2盒。保健品类请选择食品。 ") 我去发现出现了

然后又用element.attr("placeholder","可输入药品名称、数量、单位,例:红螺霉素,2盒。保健品类请选择食品。 ") 又有问题了  我就觉得是因为是内容一样的问题,然后果真是

if(placeholder == "可输入药品名称、数量、单位,例:红螺霉素,2盒。保健品类请选择食品。"){
_this.attr("placeholder","可输入药品名称、数量、单位,例:红螺霉素,2盒。保健品类请选择食品。 ")//后面多加了个空格
}else {
_this.attr("placeholder","可输入药品名称、数量、单位,例:红螺霉素,2盒。保健品类请选择食品。")
} 用这种丑陋的方法解决了,以后有好的在共享出来

移动端的坑 之 在可编辑的div中实现placeholder的更多相关文章

  1. js实现类似微信网页版在可编辑的div中粘贴内容时过滤剪贴板的内容,光标始终在粘贴内容后面,以及将光标定位到最后的方法

    过滤剪贴板内容以及定位可编辑div光标的方法: <!DOCTYPE html><html lang="en"><head>  <meta ...

  2. JS在可编辑的div中的光标位置插入内容或表情

    <input type="button" value="插入字符" onclick="document.getElementById('test ...

  3. 可编辑的div -> 编辑框

    操作可编辑的div中,无可厚非,怎么获取当前光标位置,复制,粘贴等知识是必须要懂得,下边这个链接里面对其有详细的解释: 请点这里 想看详细的例子请点击这里

  4. 浅谈html5 video 移动端填坑记

    这篇文章主要介绍了浅谈html5 video 移动端填坑记,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 本文介绍了html5 video 移动端填坑记,分享给大家,具体 ...

  5. 可编辑的DIV -编辑器

    找了好多,没几个好用的,都或多或少有问题 目前这个最好用..  不过有一个奇葩的问题,就是要放在"<a></a>"标签里面, js或者jQuery获取  $ ...

  6. 编辑并列DIV

    html编辑控件,编写3个div并行,先看一下效果,如下图: 我需要将整个白色部分作为一个整体,编辑控件使用,其实使用到的就是div中的float:left属性,并且定义好宽度.css 部分代码如下: ...

  7. textarea自适应高度,div模仿textarea可编辑实现自适应高度,placeholder使用图标

    1.textarea自适应高度,placeholder使用图标 自适应高度,有很多种办法: 1)jq: $("textarea").on("input",fun ...

  8. VS编程,编辑WPF过程中,点击设计器中界面某一控件,在XAML中高亮突出显示相应的控件代码的设置方法。

    原文:VS编程,编辑WPF过程中,点击设计器中界面某一控件,在XAML中高亮突出显示相应的控件代码的设置方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net ...

  9. js在一个可编辑的div光标处插入图片或者文本(兼容ie,火狐等浏览器)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. JavaScript Observer Pattern

    var Users = { list: [], listeners: {}, add: function(name) { this.list.push({name: name}); this.disp ...

  2. The E-pang Palace(暴力几何)

    //暴力的几何题,问,n个点可以组成的矩形,不相交,可包含的情况下,最大的面积,还有就是边一定与 x y 轴平行,所以比较简单了 //暴力遍历对角线,搜出所有可能的矩形,然后二重循环所有矩形,判断一下 ...

  3. Delphi线程的初级应用

    viewRadio_th线程函数在form外生命全局变量.函数内相应的局部变量可以接收全局变量的赋值进行操作.query等可以自行创建进行查询.这样结果不会改变. //下面是后台发送字幕的线程函数应用 ...

  4. Vue中非父子组件传值的问题

    父子组件传值的问题,前面已经讲过,不再叙述,这里来说一种非父子组件的传值. vue官网指出,可以使用一个空vue实例作为事件中央线! 也就是说 非父子组件之间的通信,必须要有公共的实例(可以是空的), ...

  5. 介绍一下Python中webbrowser的用法?

    webbrowser模块提供了一个高级接口来显示基于Web的文档,大部分情况下只需要简单的调用open()方法.webbrowser定义了如下的异常:exception webbrowser.Erro ...

  6. “格式化HDFS后,HMaster进程启动失败”的问题解决

    用 hadoop namenode -fromat 格式化后,用./start-hbase.sh 启动HMaster和HRegionServer,但是过几秒种后HMaster进程自动关闭,HRegio ...

  7. 001-centos7安装 笔记本 联想G510

    一.准备前提 1.联想G510AT 用winpe进入笔记本电脑,找到一个分区,删除即可 2.使用U盘安装 2.1.准备一个8G 的U盘,格式化ntfs. 2.2.在window下,下载UltraISO ...

  8. 【TopCoder】SRM152 DIV2总结

    为什么平常刷的时候感觉还不错,比赛的时候只能做出来一道题=.= 250分题:大水题,根据题目规则把一个字符串翻译成数字,直接代码:GitHub 我是通过遍历一个个数出来的,看到大神的解法是把字符用‘- ...

  9. 【leetcode刷题笔记】Regular Expression Matching

    Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...

  10. usb2.0 协议分析

    转:https://blog.csdn.net/u011594613/article/details/48291307 一.USB硬件介绍1.1.概述 一条USB传输线分别由地线.电源线.D+和D-四 ...