【问题标题】:Can I use my homepage for the 404 page with a conditional pop up div?我可以将我的主页用于带有条件弹出 div 的 404 页面吗?
【发布时间】:2012-12-06 08:15:25
【问题描述】:

我刚刚在 htaccess 中做了以下操作:

ErrorDocument 404 http://www.website.com

我的第一个问题是,我可以这样做吗?

如果将 404 重定向到任何 SEO/etc. 等问题 主页让我知道。

第二个问题:

问题是我有一个单页网站,我想保持这种状态。

我想做的是显示一个弹出窗口div,以替代 404 页面。

所以基本上 404 会被重定向到主页,然后会出现一个弹出窗口,其中包含任何 404 消息。

如何触发弹出窗口? jquery 代码必须以某种方式知道用户是由于 404 而导致的。这是否可行?

(我可以管理弹出窗口本身,但是如何告诉它在之后出现 发生 404。)

【问题讨论】:

    标签: jquery http-status-code-404


    【解决方案1】:

    您可以将查询字符串添加到用作 404 页面的 URL。

    .htaccess

    ErrorDocument 404 http://www.website.com?page=fourOhFour
    

    然后,检查变量是否设置为正确的值,如果是,请在 javascript 中创建一个变量。

    Javascript/PHP

    <script>
      is404 = "<?php echo $_GET['page'] ?>";
      if (is404 === "fourOhFour"){
        // jQuery popup code here
      }
    </script>
    

    【讨论】:

      【解决方案2】:

      扩展Chris Herbert's answer

      仅使用 JS:

      <script>
        var is404 = location.href.search(/(\?|&)page=fourOhFour(\&|$)/g) =! -1;
        if ( is404 ) {
            // jQuery popup code here
        }
      </script>
      

      【讨论】:

        【解决方案3】:

        谢谢大家,非常感谢。

        我最终做这件事略有不同。为了有用,我会在这里发布。

        HTACCESS:

         ErrorDocument 404 http://www.website.com/#404-not-found
        

        查询:

         if (window.location.hash == '#404-not-found') {
         setTimeout(function () { 
         $("#pageNotFound").slideDown(2222, 'easeOutBounce'); 
         }, 2888);  //delay
         }
        

        所以现在只要出现 404 错误,一个漂亮的 div 就会向下滑动。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-07-08
          • 1970-01-01
          • 1970-01-01
          • 2015-03-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多