2012-09-16 20 views
0

我在一堆不同的東西中使用了JQuery Cycle幻燈片。它總是相同的交易在頭:JQuery在搜索結果中循環javascript。餿主意?

<script type="text/javascript"> 
    $(document).ready(function() { 
    $('.slideshow').cycle({ 
     fx: 'fade', 
     etc...' 
    }); 
    }); 
</script> 

然後在體內的圖片:

<div class='slideshow'> 
    <img src='photo1.jpg' width height /> 
    <img src='photo1.jpg' width height /> 
    <img src='photo1.jpg' width height /> 
    etc... 
</div> 

不過這一次,我建立了供應商的搜索引擎。返回的每個供應商都需要在其顯示框中放置一些幻燈片。我使用的是VENDOR_ID保持幻燈片類唯一的,但我不得不向下移動的JavaScript進入人體後,我查詢結果實際上部分:

while($rst = mysql_fetch_array(SQL is happening...)) { 
print(" 
    <script type='text/javascript'> 
    $(document).ready(function() { 
    $('.s$rst[vendor_id]').cycle({ 
    fx:  'fade', 
    etc... 
    }); 
    }); 
    </script> 
    <div class='s$rst[vendor_id]'> 
    <img src='$rst[prime_image]' width height /> 
    <img src='$rst[second_image]' width height /> 
    <img src='$rst[third_image]' width height /> 
    etc... 
    </div> 
");} 

作品就好了,任何人都可以想到一個問題與這個方法在我按鈕之前,並繼續前進到其他東西?焚燒不必要的記憶或類似的東西?

感謝, Ĵ

回答

0

爲什麼不換一個函數的調用cycle()

你會保存count($ rst)次strlen() - strlen(函數名+參數),它會看起來很乾淨。 你甚至可以保持你的週期()在標題..或更好..在專用file.js. (甚至可以包含一個jquery插件,如果你喜歡這個包裝的話)!

while($rst = mysql_fetch_array(SQL is happening...)) { 
print(" 
    <script type='text/javascript'> 
    $(document).ready(function() { 
    $('.s$rst[vendor_id]').cyclecaller(cycleoptions); 
    }); 
...... 
+0

聽起來不錯,謝謝! – user1349089