2009-05-29 85 views
0

我正在做一個電子商務網站,但處理Javascript正在殺死我。不同的瀏覽器中的Javascript行爲

例如,對於下面的頁面,http://nordschleife.metaforix.net/118/118/index.php/sony.html

它可以作爲預期谷歌瀏覽器,而不是在IE或Firefox。例如,點擊頁面上的產品(例如,第十個產品)的向上或向下箭頭將導致頁面上升。

我已經使用event.preventDefault();但它不適用於IE和Firefox。該JS如下:

<script type="text/javascript"> 
jQuery(document).ready(function($){ 
    $('#upImg_<?php echo $_product->getId();?>').live("click", function() { 
           var textbox = document.getElementById('qty_<?php echo $_product->getId();?>'); 
           textbox.value = parseInt(textbox.value)+1; 
           event.preventDefault(); 
           }); 
    $('#downImg_<?php echo $_product->getId();?>').live("click", function() { 
            var textbox = document.getElementById('qty_<?php echo $_product->getId();?>'); 
            if (textbox.value>1) 
            textbox.value = parseInt(textbox.value)-1; 
            event.preventDefault(); 
            }); 
           }); 
</script> 

在這個線程回答PHP generated textbox operation with Javascript

謝謝觀看。

+0

如果您正在使用jQuery那麼爲什麼VAR文本=的document.getElementById('數量_ <?PHP的echo $ _product->的getId();> ?只要$('#<?php echo $ _product-> getId();?>');然後textbox.value> 1然後變成textbox.val()> 1 – aleemb 2009-05-29 09:00:33

回答

0

問題是#在href中 - 它有一個定義的行爲,你需要覆蓋它,最簡單的方法是在你的點擊處理程序中返回false。

編輯:我知道這是一種欺騙 - preventDefault() on an tag

相關問題