新增JS和PHP,並修改幻燈片腳本以動態顯示三個不同目錄的內容。簡單地說,讓事情變得簡單。將數組索引號從PHP傳遞到Javascript
一個問題我已經是我修改腳本中使用下面的靜態代碼來填充JavaScript數組:
variableslide[0]=['team_a/blank.jpg']
variableslide[1]=['team_a/ford.jpg']
variableslide[2]=['team_a/futuristic.jpg']
variableslide[3]=['team_a/lambo.jpg']
我的PHP代碼工作至今動態枚舉的目錄,然後通過結果在爲Javascript:
<?php
// Header("content-type: application/x-javascript");
$team_a = array();
$team_b = array();
$team_c = array();
foreach (new DirectoryIterator('team_a') as $fileInfo) {
if($fileInfo->isDot() || !$fileInfo->isFile()) continue;
$team_a[] = "team_a".'/'.$fileInfo->getFilename();
}
foreach (new DirectoryIterator('team_b/') as $fileInfo) {
if($fileInfo->isDot() || !$fileInfo->isFile()) continue;
$team_b[] = $fileInfo->getFilename();
}
foreach (new DirectoryIterator('team_c') as $fileInfo) {
if($fileInfo->isDot() || !$fileInfo->isFile()) continue;
$team_c[] = $fileInfo->getFilename();
}
?>
<script type="text/javascript">
var variableslide = <?php echo json_encode($team_a, JSON_UNESCAPED_SLASHES)
?>
在Chrome當我「檢查元素」,同時運行完整的代碼,我可以看到,文件名被傳遞到JavaScript語法,但是,缺少0,1,2,3, 4等。我只能以文件路徑結束。這裏的結果:
var variableslide = ["team_a/blank.jpg","team_a/ford.jpg","team_a/futuristic.jpg","team_a/lambo.jpg"];
我一直在周圍的Googling是如何獲得VAR variableslide陣列讀取,這樣的:
variableslide[0]=['team_a/blank.jpg']
variableslide[1]=['team_a/ford.jpg']
拉數組索引號和PHP文件名和填充在JS中的variableslide數組,因此它讀取與上面相同。當我從PHP腳本中輸入print_r時,它會正確顯示索引號和文本。任何人都可以幫我解決這個問題!謝謝!
這些都是等效的陣列(保存,你在包裝多個陣列的陣列,爲什麼?)。 '[''','..',..]'符號只是緊湊的文字符號。 – deceze 2015-02-10 13:51:24
只需按正常方式,variableslide [0] 或在Chrome控制檯中輸入variableslide [0]; 它應該返回team_a/blank.jpg或數組的第一個元素 – 2015-02-10 13:55:26