Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.08.2013, 17:47
Аватар для Krot
Интересующийся
Отправить личное сообщение для Krot Посмотреть профиль Найти все сообщения от Krot
 
Регистрация: 17.07.2013
Сообщений: 14

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, все работает нормально. Подскажите пожалуйста, как решить эту проблему.
Ответить с цитированием
  #2 (permalink)  
Старый 11.08.2013, 17:59
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

IE7? А разве такой есть? Я IE8 видал, а про IE7 даже не слышал. Я уж молчу про 6.
Ответить с цитированием
  #3 (permalink)  
Старый 11.08.2013, 18:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

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>
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2013, 18:27
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Вместо input[i].getAttribute('placeholder') попробуй input[i].attributes['placeholder'].value
Ответить с цитированием
  #5 (permalink)  
Старый 11.08.2013, 18:31
Аватар для Krot
Интересующийся
Отправить личное сообщение для Krot Посмотреть профиль Найти все сообщения от Krot
 
Регистрация: 17.07.2013
Сообщений: 14

Всё вопрос решён. Мой скрипт оказывается работал, просто я поверял его на обычном ie установив режим ie7.На virtualbox в xp всё работает отлично.
Ответить с цитированием
  #6 (permalink)  
Старый 11.08.2013, 18:37
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А сколько хостов с юзерагентом IE7 браузера у тебя?
Ответить с цитированием
  #7 (permalink)  
Старый 12.08.2013, 17:15
Аватар для Krot
Интересующийся
Отправить личное сообщение для Krot Посмотреть профиль Найти все сообщения от Krot
 
Регистрация: 17.07.2013
Сообщений: 14

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



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jquery для placeholder работает только для первого input в ie Nailya jQuery 1 13.05.2014 09:57
HTML5. Кроссбраузерное Оформление Placeholder... Mike_Kharkov (X)HTML/CSS 46 18.04.2013 19:47
Кроссбраузерный placeholder с использованием библиотеки Modernizr Heidel jQuery 1 09.01.2013 03:05
HTML5-атрибут - placeholder devote Ваши сайты и скрипты 2 04.09.2012 16:15