2016-01-23 21 views
1

我想要做的是點擊按鈕,並有它的日期另一個div的背景。 這些按鈕是使用php從文件中的imgs生成的。php生成的html按鈕來運行javascript

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="UTF-8"> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 
    <title></title> 
    <style> 
     button{width: 100%; } 
    </style> 
</head> 
<body> 
    <div id="Navi" style="width: 150px; height: 640px;background: green;"> 
     <?php 
      foreach (glob("*.png") as $filename) { 
       echo "<button id='$filename' onclick='change(event);'>".substr($filename, 0, -4)."</button></br>"; 
      } 
     ?> 
    </div> 
    <div id="ImgBig" style="height: 640px; width: 640px;margin-left: 150px; margin-top: -640px; background: blue;"></div> 
    <script> 
     function change(event){ 
      $("#ImgBig").css("background-image", "url("+event.target.id+")"); 
     } 
    </script> 
</body> 

+0

而你的問題是? –

+0

劑量不工作,我不知道爲什麼 – tareoflight

+0

可以請你定義'不起作用'?你有一些可能的問題。 - 圖像路徑沒有正確指定 - 背景沒有改變等。你也可以添加一個真正的數組而不是glob(「*。png」)? – Bizmate

回答

1

請嘗試在你的PHP目標改變eventthis讓你的JavaScript函數應用到當前項目:

<?php 
      foreach (glob("*.png") as $filename) { 
       echo "<button id='$filename' onclick='change(this);'>".substr($filename, 0, -4)."</button></br>"; 
      } 
     ?> 

然後,在JavaScript change功能,只需刪除target

function change(event){ 
      $("#ImgBig").css("background-image", "url("+event.id+")"); 
     } 
+0

我試過但仍然沒有結果或錯誤 – tareoflight

+0

那麼,這是現在解決的問題之一。您的調試工具對您指出了什麼? –

+0

調試工具不要說什麼是錯的 – tareoflight