Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript History.js不在Firefox 13+中工作;和歌剧12+;给麦克。适用于Chrome 21+;虽然_Javascript_Jquery_Html_History.js - Fatal编程技术网

Javascript History.js不在Firefox 13+中工作;和歌剧12+;给麦克。适用于Chrome 21+;虽然

Javascript History.js不在Firefox 13+中工作;和歌剧12+;给麦克。适用于Chrome 21+;虽然,javascript,jquery,html,history.js,Javascript,Jquery,Html,History.js,我一直在想到底出了什么问题。我所做的实现与Github Wiki页面中的示例非常相似 下面是代码示例。感谢您的帮助。干杯 $(document).ready(function() { var History = window.History; $.expr[':'].internal = function(obj, index, meta, stack){ var rootUrl = History.getRootUrl() var

我一直在想到底出了什么问题。我所做的实现与Github Wiki页面中的示例非常相似

下面是代码示例。感谢您的帮助。干杯

$(document).ready(function() {
    var History = window.History;

    $.expr[':'].internal = function(obj, index, meta, stack){
        var rootUrl = History.getRootUrl()
        var
            $this = $(obj),
            url = $this.attr('href')||'',
            isInternalLink;
        isInternalLink = url.substring(0,rootUrl.length) === rootUrl || url.indexOf(':') === -1;

        return isInternalLink;
    };

    URB = {
        bootstrap: function() {
            URB.cleanUpDomForInit();
            URB.ajaxifyLinks('body');
            URB.ajaxifySelectBox('body');

            $(window).bind('statechange', function() {
                var State = History.getState();
                var html = '<div class="twelve columns">'+State.data.content+'</div>';
                URB.updateBelly(html);
            });

            // Initialize Model
            URB.loadExternalJS(base_url + 'javascripts/URB/URB.Model.js');

            var checkModel = setInterval(function() {
                if(typeof URB.Model != 'undefined') {
                    URB.Model.proxy('api/article', null, null, function(data) {
                        console.log(data);
                    });
                    clearInterval(checkModel);
                }
            }, 100);
        },

        belly:
            $("#belly"),

        isMobile:
            window.matchMedia('only screen and (max-width: 767px)').matches ? true : false,
        isTablet:
            window.matchMedia('only screen and (min-width: 768px) and (max-width: 1024px)').matches ? true : false,
        isDesktop:
            window.matchMedia('only screen and (min-width: 1025px)').matches ? true : false,

        loadExternalJS: function(url) {
            $.ajax({
                type: "GET",
                url: url,
                dataType: "script"
            });
        },

        updateBelly: function(html) {
            URB.belly.html(html);
        },

        ajaxifyLinks: function(elm) {
            var $this = $(elm);
            $this.find('a:internal:not(.no-ajaxy)').click(function(e) {
                if(e.which == 2 || event.metaKey)
                    return true;

                var
                    $this = $(this),
                    url = $this.attr('href'),
                    title = $this.attr('title') || null;

                var stateData = {
                    content: title
                };
                History.pushState(stateData, title, url);

                var html = '<div class="twelve columns">'+stateData.content+'</div>';
                URB.updateBelly(html);

                e.preventDefault();
                return false;
            });
        },

        ajaxifySelectBox: function(elm) {
            var $this = $(elm);
            $this.find('select.ajaxify').change(function(e) {
                var
                    $this = $(this),
                    url = $this.val(),
                    title = $this.children("option:selected").text();

                if($this.children("option:selected").attr('data-open-new-window') == 1) {
                    console.log("Open in new window: " + url);
                }
                else {
                    var stateData = {
                        content: title
                    };
                    History.pushState(stateData, title, url);
                    console.log(title);

                    var html = '<div class="twelve columns">'+stateData.content+'</div>';
                    URB.updateBelly(html);
                }

                e.preventDefault();
                return false;
            });
        },

        cleanUpDomForInit: function() {
            if(URB.isMobile) {
                URB._cleanDom(functionRegistrations.mobile, '.show-for-medium, .show-for-large, .show-for-large-up, .show-for-medium-down, .show-for-xlarge');
            }

            if(URB.isTablet) {
                URB._cleanDom(functionRegistrations.tablet, '.show-for-large, .show-for-large-up, .show-for-xlarge, .show-for-small');
            }

            if(URB.isDesktop) {
                URB._cleanDom(functionRegistrations.desktop, '.show-for-small');
            }
        },

        _cleanDom: function(elms, css) {
            $(css).each(function(index, elm) {
                $(elm).remove();
            });
            for(i in elms) {
                elms[i]();
            }
        }
    };

    URB.bootstrap();
});
$(文档).ready(函数(){
var历史=window.History;
$.expr[':'].internal=函数(对象、索引、元、堆栈){
var rootUrl=History.getRootUrl()
变量
$this=$(obj),
url=$this.attr('href')| |',
isInternalLink;
isInternalLink=url.substring(0,rootUrl.length)==rootUrl | | url.indexOf(':')==-1;
返回isInternalLink;
};
城市={
引导:函数(){
URB.cleanUpDomForInit();
城市ajaxifyLinks(“主体”);
城市ajaxifySelectBox(“主体”);
$(窗口).bind('statechange',function()){
var State=History.getState();
var html=''+State.data.content+'';
URB.updateBelly(html);
});
//初始化模型
loadExternalJS(base_url+'javascripts/URB/URB.Model.js');
var checkModel=setInterval(函数(){
if(城市模型的类型!=“未定义”){
URB.Model.proxy('api/article',null,null,函数(数据){
控制台日志(数据);
});
clearInterval(检查模型);
}
}, 100);
},
腹部:
美元(“#肚皮”),
伊斯梅尔:
window.matchMedia('仅屏幕和(最大宽度:767px)')。匹配?真:假,
isTablet:
window.matchMedia('仅屏幕和(最小宽度:768px)和(最大宽度:1024px)')。匹配?真:假,
isDesktop:
window.matchMedia('仅屏幕和(最小宽度:1025px)')。匹配?真:假,
loadExternalJS:函数(url){
$.ajax({
键入:“获取”,
url:url,
数据类型:“脚本”
});
},
updateBely:函数(html){
URB.belly.html(html);
},
AjaxyFylinks:函数(elm){
var$this=$(elm);
$this.find('a:internal:not(.no ajaxy)')。单击(函数(e){
if(e.which==2 | | event.metaKey)
返回true;
变量
$this=$(this),
url=$this.attr('href'),
title=$this.attr('title')| | null;
var状态数据={
内容:标题
};
pushState(stateData、title、url);
var html=''+stateData.content+'';
URB.updateBelly(html);
e、 预防默认值();
返回false;
});
},
ajaxifySelectBox:函数(elm){
var$this=$(elm);
$this.find('select.ajaxify').change(函数(e){
变量
$this=$(this),
url=$this.val(),
title=$this.children(“选项:选定”).text();
if($this.children(“选项:selected”).attr('data-open-new-window')==1){
log(“在新窗口中打开:+url”);
}
否则{
var状态数据={
内容:标题
};
pushState(stateData、title、url);
控制台日志(标题);
var html=''+stateData.content+'';
URB.updateBelly(html);
}
e、 预防默认值();
返回false;
});
},
cleanUpDomForInit:function(){
如果(城市伊斯莫比尔){
URB._cleanDom(functionRegistrations.mobile,“.显示中号、.显示大号、.显示大号向上、.显示中号向下、.显示xlarge”);
}
如果(城市列表){
URB._cleanDom(functionRegistrations.tablet,“.大屏幕显示,.大屏幕显示,.大屏幕显示,.小屏幕显示”);
}
if(城市isDesktop){
URB._cleanDom(functionRegistrations.desktop,'.show for small');
}
},
_cleanDom:函数(elms、css){
$(css).每个(函数(索引,elm){
$(elm.remove();
});
(我在榆树上){
榆树[i]();
}
}
};
URB.bootstrap();
});