我正在使用乔纳森·史塔克(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页面。

最佳答案

在链接上输入rel="external",如下所示:

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


然后,jQTouch应该不要理会它。

关于javascript - JQTouch.js可以干扰链接吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5506480/

10-10 18:57