2

我正在尝试制作一个占位符来在 IE 上工作。问题是我的页面通过 Ajax 加载了一些元素,但 Javascript 只加载了一次。因此,加载 Ajax 的输入字段没有占位符(因为在执行 Javascript 时未加载这些元素)。

我试图使脚本与占位符绑定到所有输入文本元素,而不仅仅是当前加载,但我不确定我做错了什么。

if(!$.support.placeholder) {

    $('[placeholder]').on('focus', function() {
        var input = $(this);
        if (input.val() == input.attr('placeholder')) {
            input.val('');
            input.removeClass('placeholder');
        }
    }).on('blur', function() {
        var input = $(this);
        if (input.val() == '' || input.val() == input.attr('placeholder')) {
            input.addClass('placeholder');
            input.val(input.attr('placeholder'));
        }
    }).blur();

}
4

1 回答 1

4

试试这个

if(!$.support.placeholder) {

    $('#closestStaticParent').on('focus', '[placeholder]' function() {
      var input = $(this);
      if (input.val() == input.attr('placeholder')) {
        input.val('');
        input.removeClass('placeholder');
      }
    }).on('blur', '[placeholder]' function() {
      var input = $(this);
      if (input.val() == '' || input.val() == input.attr('placeholder')) {
        input.addClass('placeholder');
        input.val(input.attr('placeholder'));
      }
    }).blur();

}
于 2012-09-18T22:37:17.927 回答