2013-07-06 1 views
0

내 목표는 파일의 이미지를 PHP 배열로 가져온 다음 해당 배열을 내 슬라이드 쇼에 사용할 수있는 자바 스크립트 배열로 변환하는 것입니다. 그렇게하면 새 이미지를 파일에 추가 할 때 코드를 수동으로 업데이트 할 필요가 없습니다.PHP 배열의 자바 스크립트 슬라이드 쇼

저는 자바 스크립트 부분에 어려움을 겪고 있습니다. 어떻게 든 JSON 함수를 사용하여 PHP 배열을 Javascript 배열로 변환 할 수 있지만 그 함수를 올바르게 사용하는 방법을 모르겠습니다.

이 "slike"라는 파일에서 모든 사진을 표시 내 PHP 코드입니다 : "자바 스크립트 배열로 변환"부분은 정말하지만 난 당신이 배열을 구성 할 생각을 의미하는 것이 무엇인지

<?php 
    $dir =   'slike'; 
    $file_display = array('jpg','jpeg','png'); 

    if (file_exists($dir) === false){ 
     echo "Directory ".$dir." doesn't exist!"; 
    } 

    else { 
     $dir_contents = scandir($dir); 

     foreach ($dir_contents as $file){ 
      $file_typeExplode = explode('.', $file); 
      $file_type = strtolower(end($file_typeExplode)); 

      if($file !== '.' && $file !== '..' && in_array($file_type, $file_display) === true){ 
       echo '<img src = "', $dir, '/', $file, '" alt ="', $file, '" />'; 

      } 
     } 
    } 
?> 

답변

0

확실하지 않음 html 페이지 (DOM)에있는 것부터 시작하여 javascript에 있습니다.

모든 이미지가 포함 된 페이지의 요소를 식별해야 allyou의

첫째, 이름 foo의 ID입니다 말 : 다음

<div id="foo"> 
    <img src....> 
</div> 

을 자바 스크립트에서 당신이 (당신 DIV의 모든 자식 요소에 반복 그것들은 여러분의 이미지입니다) 그리고 그것들로 배열을 만드십시오.

var arry = []; 
var images = document.getElementById('foo').childNodes; 
for(i=0; i<nodes.length; i++) { 
    arry.push(nodes[i]); 
} 
또한 모든 이미지에 클래스를 제공하고 모든 document.getElementsByClassName

에 반복 할 수

관련 문제