目前我想创建一个函数来检测android后退按钮并按下它并做一些事情。
1)用户打开应用程序,然后单击按钮。此按钮允许用户打开网站。
2)用户填写第2页的信息,他想回到上一页,他点击Android手机上的后退按钮。
3)后退按钮可帮助用户关闭网站并返回我的应用,而不是返回第1页。
有人可以告诉我如何使用jquery
或javascript
检查用户按下的后退按钮吗?这样我就可以阻止后退按钮关闭网站,但会重定向到另一个页面。
如果有任何方法可以检测浏览器android后退按钮事件?我想覆盖android后退按钮的默认设置,并在里面添加一些代码。
PS:不使用Java。
感谢。
答案 0 :(得分:3)
您也可以使用javascript实现它。 1.使用以下方法或尝试查找deviceReady方法。
<body onload="onLoad()">
2.在main.js中输入以下代码一旦身体加载,这个函数就会被调用。
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
3.设备准备就绪是在设备准备就绪后触发的功能。
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
4.准备就绪后,您可以覆盖后退按钮功能。
function onBackKeyDown() {
// Do stuff here
}
我可以知道你在寻找这个吗?
OR
您可以使用hashChange
事件
window.addEventListener("hashchange", function(e) {
// ...
})
如果您需要支持旧浏览器,请查看Modernizr的HTML5 Cross Browser Polyfills维基页面中的hashChange Event部分。
答案 1 :(得分:1)
您需要覆盖WebView Activity上的onBackPressed并检查webview是否可以返回。
@Overide
public void onBackPressed(){
if(webview.canGoBack())
webview.goBack();
else
super.onBackPressed();
}
<强>更新强>
当给出这个答案时,问题不是针对“仅Javascript”和“不用Java编码”等特定的..即仅由后端处理。 这个答案严格针对Android方面而不是后端方面。如果Android的某个人需要这个答案,我会保留这个答案。
答案 2 :(得分:1)
我想说的是,您应该专注于功能,而不是设备对该功能的实现。
Android后退按钮的行为与浏览器后退按钮相同。
当两者都对URL状态做出反应时,您可以通过URL控制行为。您可以通过pushState实现此目的。您可以从MDN here中了解有关pushState的信息,这是有关使用CSS Trick的文章。
答案 3 :(得分:0)
您可以使用javascript 和无需jquery
window.addEventListener("hashchange", function(e) {
if(e.oldURL.length > e.newURL.length)
alert("back")
});