Javascript 浏览器自动填充事件

Javascript 浏览器自动填充事件,javascript,browser,cross-browser,Javascript,Browser,Cross Browser,我正在做一些网站,我有一个登录表格。我知道人们可以将用户名和密码保存在网络浏览器中 我需要显示/隐藏标签()。如果字段为空,则标签必须显示;如果字段中有任何值,则标签必须隐藏, 但这不适用于浏览器自动完成,是否有我可以跟踪的方法 我试过: jQuery.change(); 但这不起作用 除了关闭自动完成功能,我还能做些什么吗?这里的标准是在相关输入元素上使用占位符属性: 当没有文本时,用户名将显示在输入中,否则将隐藏。如果您正在使用它,那么您可能还应该使用类似于检测支持并创建普通文本标签的

我正在做一些网站,我有一个登录表格。我知道人们可以将用户名和密码保存在网络浏览器中

我需要显示/隐藏标签(
)。如果字段为空,则标签必须显示;如果字段中有任何值,则标签必须隐藏, 但这不适用于浏览器自动完成,是否有我可以跟踪的方法

我试过:

jQuery.change();
但这不起作用


除了关闭自动完成功能,我还能做些什么吗?

这里的标准是在相关输入元素上使用占位符属性:


当没有文本时,
用户名
将显示在输入中,否则将隐藏。如果您正在使用它,那么您可能还应该使用类似于检测支持并创建普通文本标签的功能。

这非常简单。
我将其用于网站的文本字段

这种编码是在Javascript文本中进行的

  • 创建一个带有名称和
    id=“comform”
    (您可以稍后更改,仅供参考)
  • 创建一个
    您必须手动触发更改事件:

    $("#username")
    .change(function () {
        // do stuff on change (check for default)
    })
    .trigger("change");
    

    或者,如果您只想切换默认文本(或Modernizer为aviraldg建议的占位符属性),请使用一些水印库。

    它适用于大多数现代浏览器,如您所见,即使在搜索字段(页面右上角)中使用它,这又有何帮助?您没有要求使用特定的语言,而是要计算字段中的项数,对吗?
    function counter() {
        var numbering;
        numbering = document.forms["comform"]["Message"].value.length;
        if (numbering == 0) {
            label();
        }
        if (numbering != 0) {
            document.getElementById('ifsend').innerHTML="";
        }
    }
    
    function label() {
        document.getElementById('ifsend').innerHTML="Your form value is empty";
    }
    
    $("#username")
    .change(function () {
        // do stuff on change (check for default)
    })
    .trigger("change");