Href Javascript适用于桌面,但不适用于Mobile

时间:2015-07-10 02:22:00

标签: javascript jquery html jquery-mobile mobile

我正在使用此功能来旋转html内容。它正在使用笔记本电脑/麦克风,但是当我触摸手机上的链接时无法正常工作。

<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 如何修改它以适应建议的解决方案?

2 个答案:

答案 0 :(得分: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>');

答案 1 :(得分:0)

你试过这个:

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

请注意,此方法可能会导致yourFunction()的可能返回值。