javascript - 占位符 IE9 - Javascript 未在 IE9 中执行

标签 javascript internet-explorer-8 internet-explorer-9 placeholder

我目前正在 Drupal 中开发一个网站,我使用 Javascript 来替换 IE8-9 中的占位符属性。代码如下:

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

但是好像没有执行。导航器不会进入函数内部。当我通过控制台启动它时,它工作正常。 有人知道如何修复它吗?

编辑:即使放置正确的选择器,它仍然不起作用 非常感谢

最佳答案

占位符是某些 html 元素(输入)的属性,您必须添加与给定属性匹配的选择器:

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

关于javascript - 占位符 IE9 - Javascript 未在 IE9 中执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33103746/

相关文章:

jQuery Ajax 调用 WebService 在 IE8 中返回 “No Transport” 错误 - 无跨域

jQuery:使用 SlideUp()/slideDown() 时 IE8 边距会折叠

JavaScript 动画在客户端的 IE 9 上卡住,但我的没有。为什么?

html - 网页在 Internet Explore 上对齐不当

facebook - 使用 Facebook REST API 时出现 IE9 错误 SEC7111 ("HTTPS security is compromised"

javascript - 在 Rails 应用程序中使用无限滚动

javascript - CSS 全局类问题与 child

javascript - self 不是 javascript 中的保留字——那么它是如何在我的脚本中没有定义的情况下使用的呢?

javascript - 使用 eval 内存实现。 eval 的这种使用可以接受吗?

html - IE8 无法加载字体