php
  • jquery
  • 2013-08-20 26 views 0 likes 
    0

    我正在嘗試調整網站,以便用戶可以通過其移動設備上的照片庫進行輕掃。我試圖通過使用JQuery來做到這一點。這個網站不是我寫的,所以我不能真正解釋前面的程序員對他們的代碼所作的選擇。將jQuery集成到php文件中

    目前,用戶可以通過點擊(點擊)當前圖片來更改圖片。這個代碼可以在名爲home.php的php文件中找到。這是它:

    <?php 
    ... 
    $main_content .= "\n  <div class='main_image'> 
         <a href='$next_slideURL' style='display:block'> 
          <img src='$root/$item_path/$slideFile' alt='$slideCaption from $projectTitle\n [xxxxxxxxxxxxx]' style='max-width:832px; max-height:500px' title='$projectTitle: $slideCaption. \nclick for next slide ($next_slideCaption). '></a> 
        </div>\n"; 
    ... 
    ?> 
    

    要添加刷卡功能,添加以下代碼上面的一個右後:

    echo "<script type='text/javascript'>"; 
        echo "(function(){ 
         $(\"div.main_image\").on(\"swipeleft\", swipeleftHandler); 
         $(\"div.main_image\").on(\"swiperight\", swiperightHandler); 
    
         function swipeleftHandler(event){ 
          $.mobile.changePage(\"$next_slideURL\", {transition: \"slideleft\", changeHash: false}); 
         } 
    
         function swiperightHandler(event){ 
          $.mobile.changePage(\"$previous_slideURL\", {transition: \"slideright\", changeHash: false}); 
         } 
        });"; 
        echo "</script>"; 
    

    雖然我不知道到底爲什麼這不工作,我有一些可能的原因(不幸的是這可能都是真的)。 1)由於div class ='main_image'是作爲變量聲明完成的,所以JQuery行「div.main_image」沒有引用(即它不知道main_image是什麼)。我不知道爲什麼div被創建爲一個變量聲明($ main_content不斷被添加到整個php文件中,並最終與其他一些變量一起回顯)。

    2)我需要包括jQuery的下面的代碼,但我有它在錯誤的地方:

    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css"> 
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
    <script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script> 
    

    現在我有它在index.html文件的開頭部分。這是錯的嗎? 3)我以前從未使用JQuery,因此任何數量的事情可能對我寫的短腳本都是錯誤的。

    對不起,對於這篇較長的文章,我不確定如何以更簡單的方式解釋這個。

    我會很感激,如果任何人都可以用這種方法來幫助我,或者提出一個不同的方法。

    乾杯!

    +0

    不要寫回聲「

    0

    看起來像你需要把你的JavaScript放在$main_content變量中,就像其他代碼一樣。 但說實話,你應該從HTML/PHP分離你的JavaScript。

    0

    最好的辦法是打出來的PHP標籤

    和改變這支(function()$(function()

    <?php 
    //php code 
    ?> 
    <script type='text/javascript'> 
    $(function() { 
        $("div.main_image").on("swipeleft", swipeleftHandler); 
        $("div.main_image").on("swiperight", swiperightHandler); 
    
        function swipeleftHandler(event) { 
         $.mobile.changePage("$next_slideURL", { 
          transition: "slideleft", 
          changeHash: false 
         }); 
        } 
    
        function swiperightHandler(event) { 
         $.mobile.changePage("$previous_slideURL", { 
          transition: "slideright", 
          changeHash: false 
         }); 
        } 
    }); 
    </script>; 
    <?php 
    //php code 
    ?> 
    
    +0

    我不能把它從php標籤中取出,因爲我在if/elseif語句中實現了我的代碼。 – user2699231

    +0

    @ user2699231你可以'<?php if(){?> js code ' –