2013-02-15 83 views
0

我有一個關於Magento,jQuery和jQuery Block UI的相當混雜的問題。您知道客戶訪問其客戶帳戶時出現的導航鏈接嗎?那些通過XML創建的?在Magento客戶帳戶導航上使用jQuery Block UI。鏈接

好吧,我努力的目標他們兩個人專門爲了在數據庫取其甜蜜的時間來創建一個jQuery UI模塊加載動畫。我有jQuery和jQuery Block UI啓動並運行,現在需要在用戶點擊其中一個特定鏈接的時刻在屏幕上顯示此消息/動畫/塊/ ajaxloader,以便所有內容都完全加載。或者我可以將代碼放在我正試圖加載的頁面上,這樣我就不必擔心它們來自哪裏。但是,我不確定如何通過jQuery完成此操作。我目前沒有進行ajax調用來加載數據(並且我明白,如果我使用ajax,這可能會更簡單)。

任何想法?

UPDATE:

感謝@JaredKipe,但它似乎並沒有實現我的目標。這裏是我在head.phtml中放置jQuery和Block UI以及你描述的代碼。

<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
<script type="text/javascript" src="<?php echo $this->getJsUrl('jqueryBlockUI/jquery.blockUI.js') ?>"></script> 
<script type="text/javascript"> 
    //<![CDATA[ 
    var $j = jQuery.noConflict(); 
    //]]> 
</script> 
<script> 
    $j(function() { 
      $j('.block-account li:not(.current)').click(function() { 
      $j.blockUI(); 
     }); 
    }); 
</script> 
<?php echo $this->getCssJsHtml() ?> 

這是控制器看起來像加載頁面的內容。

public function orderhistoryAction() 
{ 
    if ($this->_getCustomerSession()->isLoggedIn()) { 
     $this->loadLayout(); 
     $this->renderLayout(); 
    } else { 
     $this->_redirect('customer/account/login'); 
    } 
} 

顯然塊被從佈局xml文件加載,但是我不能確定如何可以顯示的jQuery塊UI(或一些其他類型的加載消息的),而塊被裝載/創建。

同樣,我是很新的Magento的框架。感謝任何人可以提供的幫助!

回答

0

我從來沒有聽說過的jQuery BlockUI的但文檔似乎使其直線前進。

jQuery('.block-account li:not(.current)').click(function() {jQuery.blockUI();}); 

應該這樣做。這會爲所有'帳戶'鏈接添加一個點擊事件(除了當前的鏈接),它不會阻止實際的頁面加載,但會激活任何魔術'$ .blockUI()',這會阻止用戶與直到服務器發佈響應。這裏不需要AJAX,雖然它可能是...

+0

好的。我對Magento相當陌生,所以很遺憾,如果我錯過了一些相當明顯的流程元素。 我應該在哪裏放置它?在我想鏈接的頁面上? 所有我想要做的就是通過blockUI創建「加載」消息,有它的那一刻我展示點擊特定鏈接起來的那一刻該頁面完全加載。 – Ellipsis 2013-02-15 16:28:24

+0

您需要將其插入DOM中某個地方,以便在帳戶頁面加載時加載它。您可以通過特定的模板更改來完成此操作,或者您可以將其插入到System-> Config-> General-> Design->中,然後將其插入到腳本中(可能包含jQuery(document).ready(function(){...} HTMLHead-> Misc.Scripts。這是假設jQuery和jQueryBlockUI已加載正確。 – 2013-02-15 17:09:45

+0

它似乎並沒有工作。如果你在的主要問題,以檢查出我更新的時候,它可能給你更多的上下文。感謝您的幫助! – Ellipsis 2013-02-15 19:44:12

相關問題