2012-02-04 120 views
0

任何人都可以指向正確的方向。我一直在尋找,但無法找到我如何添加一個工具提示動態生成的數據。例如,我製作了一個顯示電影標題的mysql結果列表,並且希望有一個工具提示,當鼠標懸停在鼠標上方時,可以提供導演,演員等額外信息。每次都會生成電影標題的隨機列表。動態工具提示

我知道如何將工具提示添加到靜態數據,但是如何在工具中添加工具提示?

任何指針或推動正確的方向將不勝感激。

+2

只要做你對靜態數據做的事情......你通常爲此做了什麼? – 2012-02-04 22:24:49

回答

0

我在PHP中使用了Prototip 2,其中的提示是在生成頁面時隨時生成的。

基本上,我有這個代碼爲數據庫中的一堆不同項目創建了一堆工具提示。此代碼是整個頁面的HTML的一部分。這恰好在zend框架視圖腳本中,但是通用。

<?php foreach($this->items as $item): ?> 
<?php if ($item['statusText'] != ''): ?> 

tips.push(
     new Tip('led_<?php echo $item['boxsn']; ?>', '<?php echo $item['statusText']; ?>', { 
stem: 'leftMiddle', 
hook: { target: 'rightMiddle', tip: 'leftMiddle' }, 
style: 'protoblue', 
offset: { x: 5, y: 0 } 
}) 
); 
    <?php endif; ?> 
    <?php if ($item['alarms'] != ''): ?> 

    tips.push(
     new Tip('alarm_<?php echo $item['boxsn'] ?>', 
       '<?php echo $item['alarms'] ?>', { 
      stem: 'leftMiddle', 
      hook: { target: 'rightMiddle', tip: 'leftMiddle' }, 
      style: 'protoblue', 
      offset: { x: 5, y: 0 } 
     }) 
    ); 
    <?php endif; ?> 
<?php endforeach; ?> 

這給我留下了類似於對每個工具提示我創建了以下的輸出:

tips.push(
    new Tip('led_091133000039', 'Item has not functioned since 02/03/12 01:30 PM', { 
     stem: 'leftMiddle', 
     hook: { target: 'rightMiddle', tip: 'leftMiddle' }, 
     style: 'protoblue', 
     offset: { x: 5, y: 0 } 
    }) 
); 

我甚至使用Ajax刷新該項目的狀態和使用以下方法來從內存中清除所有的提示等等從阿賈克斯新的將被激活:

// prior to ajax update 
Tips.hideAll(); // prototip function to hide visible tooltips 

tips.each(function(t) { 
    delete t; 
}); 

delete tips; 
tips = []; 

// run ajax update 

led_091133000039每個ID是我想在上空盤旋,有提示顯示圖像的ID。該HTML在頁面的前面生成。我有Javascript,它在HTML的底部創建所有提示。

希望能幫到你。