JQTouch.js会干扰链接吗?

时间:2011-03-31 21:18:58

标签: javascript jquery jqtouch

我在Jonathan Stark的书中使用数据库代码,使用HTML,CSS和Javascript来构建手机应用程序。在他的HTML页面上,他引用了jquery,jqtouch和javascript。

在HTML页面上,他创建了转到同一页面的简单链接:

<li class="arrow"><a id="1" href="#date">Yesterday</a></li>

当我用......替换它时

<li><a href="rc18.html"><strong>RC18 setups</strong></a></li>

...然后页面仍然存在;它不会更改为新的HTML页面。

那么,JQTouch.js会干扰链接吗?

Jqtouch.js有9个引用'href',但我不太了解Javascript来理解它们。

以下是一个例子:

    function showPageByHref(href, options) {
        var defaults = {
            data: null,
            method: 'GET',
            animation: null,
            callback: null,
            $referrer: null
        };

        var settings = $.extend({}, defaults, options);

        if (href != '#')
        {
            $.ajax({
                url: href,
                data: settings.data,
                type: settings.method,
                success: function (data, textStatus) {
                    var firstPage = insertPages(data, settings.animation);
                    if (firstPage)
                    {
                        if (settings.method == 'GET' && jQTSettings.cacheGetRequests && settings.$referrer)
                        {
                            settings.$referrer.attr('href', '#' + firstPage.attr('id'));
                        }
                        if (settings.callback) {
                            settings.callback(true);
                        }
                    }
                },
                error: function (data) {
                    if (settings.$referrer) settings.$referrer.unselect();
                    if (settings.callback) {
                        settings.callback(false);
                    }
                }
            });
        }
        else if ($referrer)
        {
            $referrer.unselect();
        }
    }

在这里:

    // User clicked an internal link, fullscreen mode
    if (target == '_webapp') {
        window.location = $el.attr('href');
    }
    // User clicked a back button
    else if ($el.is(jQTSettings.backSelector)) {
        goBack(hash);
    }
    // Branch on internal or external href
    else if (hash && hash!='#') {
        $el.addClass('active');
        goTo($(hash).data('referrer', $el), animation);
    } else {
        $el.addClass('loading active');
        showPageByHref($el.attr('href'), {
            animation: animation,
            callback: function(){ 
                $el.removeClass('loading'); setTimeout($.fn.unselect, 250, $el);
            },
            $referrer: $el
        });

他还引用了jquery.js,那里的href实例对我来说非常神秘。你能否通过上面的代码看到是否有什么东西干扰我去应用程序的同一个文件夹中的另一个html页面。

1 个答案:

答案 0 :(得分:3)

rel="external"放在您的链接上,如下所示:

<li><a href="rc18.html" rel="external"><strong>RC18 setups</strong></a></li>

jQTouch应该不管它。