Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   placeholder ie <=7 (https://javascript.ru/forum/dom-window/40576-placeholder-ie-%3D7.html)

Krot 11.08.2013 17:47

placeholder ie <=7
 
Здравствуйте, сегодня у меня возникла некая проблема с формой.
Дело в том что на проекте не используется jquery а мой javascript код добавления placeholder в value элемента работает некорректно в ie <= 7

<input type="text" name="name" placeholder="Имя"/>

<script>
    var input = document.getElementsByTagName('input');
    
     for (var i = 0; i < input.length; i++){
        var pla = input[i].getAttribute('placeholder')
        
        
        input[i].value=''+pla+'';
        input[i].onfocus = function() {
            this.value = '';
        }
        input[i].onblur = function() {
            vort = this.getAttribute('placeholder')            
            this.value = ''+pla+'';
        };            
     };     
</script>


В ie <=7 в value вставляется null. причем в ie 8 и ie 9 , которые тоже не поддерживают placeholder, все работает нормально. Подскажите пожалуйста, как решить эту проблему.

danik.js 11.08.2013 17:59

IE7? А разве такой есть? Я IE8 видал, а про IE7 даже не слышал. Я уж молчу про 6.

рони 11.08.2013 18:01

Krot,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<input type="text" name="name" placeholder="Имя"/>

<script>
    var input = document.getElementsByTagName('input');
     for (var i = 0; i < input.length; i++){
        var pla = input[i].placeholder
        input[i].value = pla;
        input[i].onfocus = function() {
            this.value = '';
        }
        input[i].onblur = function() {
            this.value = this.value ? this.value:pla;
        };
     };
</script>

</body>

</html>

danik.js 11.08.2013 18:27

Вместо input[i].getAttribute('placeholder') попробуй input[i].attributes['placeholder'].value

Krot 11.08.2013 18:31

Всё вопрос решён. Мой скрипт оказывается работал, просто я поверял его на обычном ie установив режим ie7.На virtualbox в xp всё работает отлично.

danik.js 11.08.2013 18:37

А сколько хостов с юзерагентом IE7 браузера у тебя?

Krot 12.08.2013 17:15

Неее пока сайт не доделан. Просто тот умник заказчик почему-то не любит jquery а поддержка браузеров ie 6+


Часовой пояс GMT +3, время: 13:09.