如何在IE8和9中支持占位符属性

我有一个小问题,IE 8-9中不支持输入框的placeholder属性。

在我的项目(ASP Net)中提供这种支持的最佳方式是什么? 我正在使用jQuery。 我需要使用其他一些外部工具吗?

http://www.hagenburger.net/BLOG/HTML5-Input-Placeholder-Fix-With-jQuery.html是一个很好的解决方案吗?


你可以使用这个jQuery插件:https://github.com/mathiasbynens/jquery-placeholder

但是你的链接似乎也是一个很好的解决方案。


您可以使用以下任何一种polyfills:

  • https://github.com/jamesallardice/Placeholders.js(不支持密码字段)
  • https://github.com/chemerisuk/better-placeholder-polyfill
  • 这些脚本将在不支持它的浏览器中添加对placeholder属性的支持,并且它们不需要jQuery!


    $ .Browser.msie不再是最新的JQuery ...你必须使用$ .support

    如下所示:

     <script>
    
         (function ($) {
             $.support.placeholder = ('placeholder' in document.createElement('input'));
         })(jQuery);
    
    
         //fix for IE7 and IE8
         $(function () {
             if (!$.support.placeholder) {
                 $("[placeholder]").focus(function () {
                     if ($(this).val() == $(this).attr("placeholder")) $(this).val("");
                 }).blur(function () {
                     if ($(this).val() == "") $(this).val($(this).attr("placeholder"));
                 }).blur();
    
                 $("[placeholder]").parents("form").submit(function () {
                     $(this).find('[placeholder]').each(function() {
                         if ($(this).val() == $(this).attr("placeholder")) {
                             $(this).val("");
                         }
                     });
                 });
             }
         });
     </script>
    
    链接地址: http://www.djcxy.com/p/70547.html

    上一篇: How to support placeholder attribute in IE8 and 9

    下一篇: set placeholder for internet explorer?