草庐IT

ticket_history

全部标签

javascript - 当使用来自 react-router-dom 的 `Failed to execute ' 时,为什么 'History' pushState' on `Link` `

我看过类似的帖子,但找不到答案,就我而言,我正在尝试传递来自的操作:addExpense=(expense)=>{console.log('HelloFromAddExpenseForm');}到/create我渲染的路线组件CreateExpense链接已呈现,但当我点击它时,控制台出现错误:UncaughtDOMException:Failedtoexecute'pushState'on'History':function(expense){console.log('HelloFromaddExpense');}couldnotbecloned这是为什么?解决方法是什么?我更新的代

javascript - 有没有办法告诉 history.js 状态的发展方向?

如标题所说,如果pushState函数被调用,我希望能够执行不同的onstatechange事件,而不是back功能。或者,如果go函数为负或正。例子:如果History.pushState()或History.go(1)被调用,我希望statechange事件的回调是forwardPushState如果History.back()或History.go(-1)被调用,我希望statechange事件的回调是backwardsPushState 最佳答案 状态是与页面相关的一些数据(如用户在浏览器中看到的那样)。如果用户想要进入某个

javascript - history.back() 之后的代码会发生什么?

我有如下代码:window.history.back();myFunction(10);history.back()是阻塞/非阻塞调用吗?是否可以保证myFunction()会被执行?还是不执行?这是history.back()异步发生并且myFunction()是否被调用取决于不可控事件的时机? 最佳答案 spec说history.backqueuesatask.因此,实际的历史操作代码(在JS实现内部)将在主程序的下一次运行期间执行eventloop.您对myFunction的调用在当前执行轮中同步执行,因此它将始终在兼容环境中

javascript - Backbone.history 已经启动

我在我的Backbone.js应用程序上收到错误消息“Backbone.history已经启动”。这是我的代码。(function($){//modelforeacharticlevarArticle=Backbone.Model.extend({});//collectionforarticlesvarArticleCollection=Backbone.Collection.extend({model:Article});//viewforindexpagevarMainView=Backbone.View.extend({el:$('#wrapper'),render:funct

javascript - history.pushState() 改变查询值

如果我有一个正在使用函数history.pushState({},"",link);更改的链接,例如我的link是page.php?value=1&value2=2有没有办法只用pushState()函数改变value2而不是改变整个链接? 最佳答案 如果您尝试做的是更改URL而不向历史对象添加额外的条目,您可以尝试replaceState。history.replaceState({value:1,value2:X},"title","page.php"); 关于javascript-

javascript - history.go(-1) 返回在 Chrome 中不起作用

href="#"onclick="closeOrCancel()和history.go(-1)中的js方法在Chrome中不起作用(history.back())它适用于href="javascript:closeOrCancel()",但Opera不允许href="javascript:...如何使用onclick="myFunction()"让历史返回?编辑:closeOrCancel()返回false 最佳答案 在onclick代码中添加一个returnfalse;似乎就足够了:GoBack

javascript - history.pushstate 不更新标题

我正在使用AJAX加载页面的主要内容。使用history.pushstate(Object:State,String:Title,String:URL)-我能够更新地址栏中的URL并返回历史记录。但是title参数似乎没有效果。窗口标题和“历史列表”中条目的标题都没有改变(也许两者都是一样的)。我做错了什么?更新:title参数在chrome中被忽略。http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-June/026827.html 最佳答案 title参数不是窗口标题

javascript - 如果浏览器不支持 History API,Ember 路由是否会退回到使用哈希?

Ember文档states它可以设置为使用HistoryAPI进行路由,而不是使用基于哈希的片段:App.Router.reopen({location:'history'});但是我找不到任何关于如果浏览器不支持HistoryAPI会发生什么的提及。它会回退到使用像History.js这样的哈希吗?如果不支持,我是否应该检查HistoryAPI支持并在不支持时将历史实现切换为哈希? 最佳答案 在ember源中似乎没有任何HistoryAPI支持检测。因此,如果您将location设置为history,并且没有支持,您的路由可能会失

javascript - 如何在 javascript 中捕获 "History.Back"事件?

是否可以在javascript中捕获“History.Back”事件?©想要捕获history.back()事件并注销用户。P.s:有一些关于禁用history.back()的代码。但对我没有用。functiondisableBackButton(){window.history.forward();}setTimeout("disableBackButton()",0);然后设置onunload事件 最佳答案 您可以使用“window.onpopstate”事件捕获历史记录。但据我所知,它仅适用于HTML5。http://www.

javascript - Backbone.history.navigate(url,{trigger :true, replace: true})

我使用这种方法导航到url,触发事件而不是将url推送到浏览器历史记录。但是Backbone.history.navigate(url,{trigger:true,replace:true})替换历史记录中以前的url。示例:浏览器历史之前本地主机:端口/urlBackbone.history.navigate(url+'/list',{trigger:true,replace:true})预期:在路由url+'/list'和浏览器历史记录localhost:port/url上触发事件实际上:触发事件但浏览器历史记录localhost:port/#url/list。以前的url被替换