Проблема с загрузкой Modernizr

#javascript #html #placeholder #modernizr

#javascript #HTML #плейсхолдер #modernizr

Вопрос:

Я установил Modernizr в свой код, чтобы включить поддержку заполнителей html5 в firefox 3.6

Моя проблема в том, что, поскольку я использую структуру шаблона (M.V.C) в качестве своей базы кода, я не уверен, как я могу заставить скрипт «if ()» работать для моей конкретной страницы, поскольку он должен был бы вызываться в представлении. Я переместил свой скрипт modernizr в свой haeder -> был в моем нижнем колонтитуле

Моя форма:

  <?php
//Setting form attributes
$formAddSale = array('id' => 'addSale', 'name' => 'addSale');
$saleName = array('id' => 'name', 'name' => 'name', 'placeholder' => 'Name*');
$saleLocation = array('id' => 'location', 'name' => 'location', 'placeholder' => 'Location*');
$saleBedrooms = array('id' => 'bedrooms','name' => 'bedrooms', 'placeholder' => 'Number of Bedrooms*');
$saleBathrooms = array('id' => 'bathrooms','name' => 'bathrooms', 'placeholder' => 'Number of Bathrooms*');
$saleCondition = array('id' => 'condition','name' => 'condition', 'placeholder' => 'Condition*');
$saleImage = array('id' => 'userfile', 'name'=> 'userfile', 'placeholder' => 'File Location*');
$saleDescription = array('id' => 'description','name' => 'description', 'placeholder' => 'Sale Description*');
$salePrice = array('id' => 'price','name' => 'price', 'placeholder' => 'Price*');
?>

<section id = "validation"><?php echo validation_errors();?></section>
<?php 
echo form_open_multipart('admin/addsale/', $formAddSale);
echo form_fieldset(); 
echo form_input($saleName);
echo form_input($saleLocation);
echo form_input($saleBedrooms);
echo form_input($saleBathrooms);
echo form_input($saleCondition);
echo form_input($salePrice);
echo form_upload($saleImage);
echo form_textarea($saleDescription);
echo form_submit('submit','Submit');
echo form_fieldset_close();
echo form_close();
?>
  

На момент написания этого вопроса я создал ‘misc.js ‘ документ со следующим кодом:

     // if placeholder isn't supported:
if (!Modernizr.input.placeholder){
  // use a input hint script
    setInputHint(document.getElementById('name'),'Name*');
    setInputHint(document.getElementById('location'),'Location*');
    setInputHint(document.getElementById('bedrooms'),'Number of Bedrooms*');
    setInputHint(document.getElementById('bathrooms'),'Number of Bathrooms*');
    setInputHint(document.getElementById('condition'),'Condition*');
    setInputHint(document.getElementById('price'),'Price*');
    setInputHint(document.getElementById('description'),'Sale Description*');
    setInputHint(document.getElementById('userfile'),'File Location*');
   }
  

Я включил вышеупомянутый документ, как обычно, в нижний колонтитул моего «шаблона»

 <!-- jQuery Files --> 
<script type="text/javascript"    src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://www.domain.co.nz/includes/js/placeholder.js"></script> 
<script type="text/javascript" src="http://www.domain.co.nz/includes/js/misc.js">    </script>
  

Комментарии:

1. Modernizr — это полный перебор, если вы используете его только для заполнителей HTML5.

Ответ №1:

Вы получаете какие-либо ошибки Javascript?

Поскольку вы используете библиотеку JS (jQuery), вы можете заменить ‘document.getElementById’ на ‘$’, что сэкономит много кода.