标签: back-button

在什么情况下,$(文件)..已经在后退按钮点击触发?

我正在使用一些使用JQuery的$(document).ready功能来设置jqGrid实例的代码.即使通过后退按钮单击返回页面,似乎也会触发代码.

在精简测试页面中,通过后退按钮点击时不会调用类似的就绪函数:

<html>
<head>
    <script type="text/javascript" src="/JQuery/jquery-1.4.2.min.js"></script>

    <script type="text/javascript">

    $(document).ready(function(){
        alert('ready');
    })

    </script>
</head>
<body>
    <p>Index View</p>

    <a href="detail.html">Detail</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

你能给我一些关于在哪里寻找导致这种行为差异的原因的提示吗?

我在这个问题的答案中找到了一些相关信息,但是带有过度活动就绪事件的页面没有为卸载注册的事件处理程序.

jquery back-button document-ready

5
推荐指数
0
解决办法
2万
查看次数

UINavigationItem Back Button触摸区域太大

在下面的屏幕截图中,如果我点击"可用信息亭"中的"v",则启动后退按钮的操作...(不是第二个"a").

替代文字

我不明白为什么,我的代码没什么特别的(这是导航控制器处理的默认后退按钮).我也遇到了与我做的另一个应用程序相同的错误,但我从未在其他应用程序上注意到这一点

有任何想法吗 ?

谢谢.

xcode objective-c back-button uinavigationitem

5
推荐指数
1
解决办法
1852
查看次数

注销后防止后退操作

注销后,如果我按浏览器中的“后退”按钮,它不应显示上一页,而必须转到默认页面(仅登录页面)。

因此,我尝试了多种方式(ruby on rails应用程序),例如“ history.forward()”,“ onbeforeunload”,使元标记中的缓存过期,“ http://www.brookebryan.com/后退按钮检测”如此之多。 。 我很迷茫。

有人可以提出解决方案吗?

ruby-on-rails back-button

5
推荐指数
1
解决办法
2843
查看次数

通过链接或后退按钮打开时,强制JSF刷新页面/视图/表单

我有一个JSF页面,它将数据发布到外部页面.数据从JSF托管bean加载,该bean在post数据中生成唯一ID.

我有一个问题,用户点击结帐按钮然后导航回同一页面并再次按下结帐按钮.帖子数据尚未更新.而且,bean根本没有被调用.反正是否强制JSF重新加载页面和表单数据?

<form action="#{checkoutBean.externalUrl}" method="post"
    id="payForm" name="payForm">
       <input type="hidden" value="#{checkoutBean.uniqueID}" />
       <input type="submit" value="Proceed to Checkout" />
</form>
Run Code Online (Sandbox Code Playgroud)

jsf back-button html-post browser-refresh

5
推荐指数
2
解决办法
9754
查看次数

需要两次单击后退按钮才能触发popstate/statechange事件

我有一个包含iframe的页面.iframe可以获取用户的输入(通过按钮单击或菜单选择)并相应地显示内容.我需要的是,当用户操作iframe时,浏览器会将每组iframe参数推送到历史记录中; 当用户点击后退按钮时,iframe将使用上一个历史记录条目中保存的参数重新加载其内容.我有一段代码正在进行重新加载,如下所示.

奇怪的是,当我在iframe上进行多项设置(因此将多个状态条目添加到历史记录中),然后单击后面时,它会像这样工作,

假设我在历史上有状态4,3,2并且我现在处于状态5

  1. 第一次单击恢复到状态4(打印"---- state changed ----"日志消息
  2. 第二次单击会使用默认内容重新加载iframe."----状态改变----"不打印; 不调用重新加载代码.
  3. 第三次单击还原到状态3
  4. 第四次点击就像是第二次点击
  5. 第5次点击恢复到状态2

因此,在每次成功恢复状态的点击之后,需要两次点击才能触发popstate事件(我也尝试了statechanged事件,同样的结果)并恢复到另一个先前的状态.

谁知道这里发生了什么?提前致谢.

History.Adapter.bind(window, "popstate",
    function (event) {
        console.log("----state changed------", History.getState());   
        console.log("----state data------",History.getState().data.state);  

           //code to do reload an iframe to its proper state

    }); 
Run Code Online (Sandbox Code Playgroud)

iframe history back-button popstate

5
推荐指数
1
解决办法
1694
查看次数

Android webview上一页的后退按钮无法正常工作

我试图覆盖后退按钮,以便它返回上一页,但它只是退出应用程序.这里;代码..请告诉我哪里出错了.

package com.example.thebase;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.KeyEvent;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

public class MainAccelerometer extends Activity implements AccelerometerListener{

WebView myWebView;
//Back Button Code
     @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
            if(event.getAction() == KeyEvent.ACTION_DOWN){
                switch(keyCode)
                {
                case KeyEvent.KEYCODE_BACK:
                    if(myWebView.canGoBack() == true){
                        myWebView.goBack();
                    }else{
                        finish();
                    }
                    return true;
                }

            }
            return super.onKeyDown(keyCode, event);
        }


//--------------------  


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.accelerometer_example_main);
    //ENABLING JAVASCRIPT CODE
            WebView myWebView = (WebView) findViewById(R.id.webview); …
Run Code Online (Sandbox Code Playgroud)

android back-button webview

5
推荐指数
1
解决办法
2万
查看次数

使用系统警报窗口按下事件

我需要关闭back按下和home按钮事件的系统警报窗口.我试过onKeyEvent但是徒劳无功.由于我们无法捕获服务中的back按下事件,如何实现这一目标?

android back-button android-homebutton

5
推荐指数
2
解决办法
3238
查看次数

NativeScript处理后退按钮事件

我正在尝试处理NativeScript应用程序中的硬件后退按钮.我正在使用带有Angular的NativeScript版本2.3.0.

这是我在main.ts档案中的内容

// this import should be first in order to load some required settings (like globals and reflect-metadata)
import { platformNativeScriptDynamic, NativeScriptModule } from "nativescript-angular/platform";
import { NgModule,Component,enableProdMode } from "@angular/core";
import { AppComponent } from "./app.component";
import { NativeScriptRouterModule } from "nativescript-angular/router";
import { routes, navigatableComponents } from "./app.routing";
import { secondComponent } from "./second.component";
import {AndroidApplication} from "application";
@Component({
    selector: 'page-navigation-test',
    template: `<page-router-outlet></page-router-outlet>`
})
export class PageNavigationApp {
}
@NgModule({
    declarations: [AppComponent,PageNavigationApp,secondComponent
        // ...navigatableComponents
        ], …
Run Code Online (Sandbox Code Playgroud)

back-button nativescript angular2-nativescript

5
推荐指数
1
解决办法
1万
查看次数

如何检测android片段中按下后退按钮的时间?

我有带抽屉的带有片段的导航抽屉项目,其中有5个菜单,问题是当我转到菜单4时,我按了后退按钮,应用程序关闭了,但是我需要将应用程序返回到第一个菜单,这是片段中的所有菜单。

这是主要活动(导航抽屉)的代码

public class MainActivity extends AppCompatActivity{
DrawerLayout mDrawerLayout;
NavigationView mNavigationView;
FragmentManager mFragmentManager;
FragmentTransaction mFragmentTransaction;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    /**
     *Setup the DrawerLayout and NavigationView
     */

    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawerLayout);
    mNavigationView = (NavigationView) findViewById(R.id.shitstuff) ;

    /**
     * Lets inflate the very first fragment
     * Here , we are inflating the TabFragment as the first Fragment
     */

    mFragmentManager = getSupportFragmentManager();
    mFragmentTransaction = mFragmentManager.beginTransaction();
    mFragmentTransaction.replace(R.id.containerView,new Recommendation()).commit();
    /**
     * Setup click events on the Navigation View Items.
     */

    mNavigationView.setNavigationItemSelectedListener(new …
Run Code Online (Sandbox Code Playgroud)

android back-button android-fragments

5
推荐指数
4
解决办法
1万
查看次数

角路由器和后退按钮

我有一个Angular 4应用程序,使用@ angular / router中的Router进行导航

导航结构非常简单,包括:

/products
/products/:productId
/products/:productId/edit-details
/products/:productId/edit-images
etc
Run Code Online (Sandbox Code Playgroud)

路由器模块都可以正常工作。

在以下情况下,保存数据后出现的“浏览器后退”按钮是我遇到的问题:

  1. 用户在“ / products / 5”屏幕上
  2. 用户转到“ / products / 5 / edit-details”屏幕
  3. 用户进行更改,然后单击“保存”
  4. 应用程序保存数据并将用户导航回“ / products / 5”屏幕

完成上述操作后,用户单击“浏览器后退”按钮。我认为大多数用户都希望“后退”按钮将其带入“产品列表”级别,但实际上会将其带回“ / products / 5 / edit-details”屏幕,因为这是他们使用的最后一条路线。

这可能是网站与单页应用程序中预期行为之间的冲突。SPA中的外观比传统网站更像是App。在大多数应用程序中,设备的后退按钮用作“上/后退”按钮(例如,在使用您获得的“联系人”应用程序的手机上:联系人列表->联系人详细信息->编辑联系人->保存[带您联系详细信息]->按“后退”按钮可将用户带到“联系人列表”,而不是返回“编辑联系人”屏幕,因此,该用户已受过教育,可以从设备上的“后退”按钮期待这种行为。

我已经尝试过使用:

this.location.back();
Run Code Online (Sandbox Code Playgroud)

代替

this.router.navigate(['../'], { relativeTo: this.route });
Run Code Online (Sandbox Code Playgroud)

用户单击保存后

这确实部分实现了我想要的功能,但是这为“转发”按钮留下了一个不必要的选项-绕过路由器模块似乎也有些错误。

删除后,此行为尤其令人讨厌:例如,如果转到“ / products /:productId / edit-images /:imageId”并删除图像,则不存在的路由将保留在“返回”历史记录中

我也尝试过使用“ skipLocationChange”,但是并没有达到预期的效果,就好像我在Link中使用skipLocationChange进入“ edit-details”屏幕一样,然后用户按下“后退”按钮然后绕过了: productId屏幕,然后直接转到“ / products”列表

有什么建议么?

user-interface back-button angular2-routing angular

5
推荐指数
0
解决办法
2451
查看次数