2015-07-10 61 views
0

我正在使用此功能來旋轉html內容。它正在處理筆記本電腦/ Mac,但當我「觸摸」手機上的鏈接時無法工作。Href Javascript可以在桌面上使用,但不能在手機上使用

<a href="javascript:void(0)" >Link 1</a> 
<a href="javascript:void(0)" >Link 2</a> 
<a href="javascript:void(0)" >Link 3</a> 
<a href="javascript:void(0)" >Link 4</a> 
<a href="javascript:void(0)" >Link 5</a> 

單擊後,html內容將動態更改。

我試圖

<a href="#" onclick="javascript:;" >Link 1</a> 

也試過

<a href="javascript:;">Link 1</a> 

移動兩個沒有工作。任何想法爲什麼是這樣?我是否需要在JavaScript中添加任何代碼?

編輯:

觸發代碼是這樣的。首先它使用一個類。以下是其中一種方法。

bindMoveHandler:function(target){ 
     var _this = this; 
     target.on(_this.options.trigger,'a',function(event){ 
      var w = $(this).width(); 
      var current_offset = $(this).offset(); 
      var control_offset = target.offset(); 
      var left = current_offset.left - control_offset.left; 
      var scale = w/100; 
      var d = 0; //index after move finished 

全碼:http://www.jqueryscript.net/demo/jQuery-Plugin-For-Stylish-Tabbed-Slider-Kiwi-Slider/javascripts/kiwi-slider.js 如何對此進行修改建議的解決方案?

+0

如果我沒有記錯,touch需要一些css –

+0

我敢肯定你正在尋找這個http://stackoverflow.com/questions/134845/href-attribute-for-javascript-links-or-javascriptvoid0 – bassxzero

+0

我會嘗試一下,但肯定如何編輯我當前的代碼以適應此。我已經編輯我的帖子上面 – OneNation

回答

1

使用jQuery而不是onclick屬性,並使用一個函數調用是這樣的:

HTML:

<a href="#" id="onceClicked">Home</a> 

的jQuery(測試):

$('#onceClicked').click(function(e) { 
    $(this).text('You clicked me!'); 
}); 

一個例子頁面會像這樣:

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Change Text</title> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> 
    </head> 
    <body> 
     <a href="#" class="onceClicked">Link 1</a> 
     <a href="#" class="onceClicked">Link 2</a> 
     <a href="#" class="onceClicked">Link 3</a> 
     <a href="#" class="onceClicked">Link 4</a> 
     <a href="#" class="onceClicked">Link 5</a> 

     <script> 
      $('.onceClicked').click(function(e) { 
       $(this).text('You clicked me!'); 
      }); 
     </script> 
    </body> 
</html> 

這裏是一個工作示例:

http://jsfiddle.net/q87dLoc1/

但如果你想添加HTML,而不僅僅是文字,你會改變這一點:

$(this).text('You clicked me!'); 

到這樣的事情:

$(this).html('<b>You clicked me!</b>'); 
+0

我想嘗試,但我確定如何編輯我當前的代碼,以適應。我已經修改過我的帖子 – OneNation

+0

@OneNation我已更新我的帖子,請看看。 – Zach

+0

雖然如果你想添加html而不僅僅是文本,你可以改變: '$(this).text('你點擊了我!');'這樣的東西:'$(this)。html('您點擊了我!');' – Zach

0

您是否試過這個:

<a href="#" onclick="yourFunction(); return false">Link 1</a> 

請記住,這種方法可能會咬一個可能的返回值yourFunction()

+0

我會嘗試,但我確定如何編輯我的當前代碼以適應此。我修改了我的帖子 – OneNation

+0

我很少使用jQuery,因爲幾乎所有我用JavaScript做的事情都可以用native/vanilla腳本來完成。你的腳本對我來說是一個複雜的腳本。所以我恐怕不能再幫你了。 –

相關問題