【问题标题】:How to trigger a JavaScript function using the URL如何使用 URL 触发 JavaScript 函数
【发布时间】:2014-08-13 16:40:59
【问题描述】:

我真的不知道如何在标题中解释我的问题,所以我尝试了。

无论如何,这是我的问题。我有一个基本上是一个谜题的网页。它的基本前提是当你访问某个链接时,它会触发一个功能并显示下一段。

这是显示作品的功能之一 -

function showone() {
        var elem = document.getElementById("one");
         if (elem.className = "hide") {
            elem.className = "show"
            }
}       

之所以这样构建,是因为片段是使用 HTML 表格构建和放置的,使用类来隐藏和显示它们。

我需要做的是,以某种方式创建一个可以触发新片段的 URL。例如,“www.website.com/index.html?showone”是我想要的。这将触发“showone”功能。

虽然我不知道该怎么做,但经过一番搜索后,我比开始时更加困惑。

我开始使用 JavaScript 的原因是页面无法刷新。我知道这可能是不可能的,在这种情况下,我愿意接受任何关于如何让它发挥作用的建议。

提前致谢,任何建议将不胜感激。

-米切尔

【问题讨论】:

  • 您正在寻找窗口 url 哈希和 hashChange 事件
  • 为什么他们需要访问不同的 URL?我认为他们必须点击一些东西?为什么不使用点击事件?
  • @Prasanth 谢谢!你知道如何使用这些方法来实现这个特定的功能吗?快速浏览后,我认为我需要很长时间才能学习基础知识(我肯定会这样做),但我需要先完成这项工作,然后才能花时间学习另一门学科,哈哈。跨度>
  • @Cheruvian 他们不能点击任何东西。他们“找到”网址,然后将他们带回到主页,在那里出现碎片,直到它们全部被发现。网页上没有任何按钮。
  • @Mitchyl 点击事件不仅可以绑定到按钮。虽然我仍然不确定你的游戏是如何运作的,但点击事件似乎是这里最简单的解决方案。

标签: javascript php html url


【解决方案1】:

Javascript Web 应用程序框架 可以为您服务,它们允许在不刷新页面的情况下构建 Web 应用程序。
例如,您可以使用backbonejs,它内部有Router 类,非常易于使用。 代码很简单:

var Workspace = Backbone.Router.extend({

  routes: {
    "help":                 "help",    // #help
    "search/:query":        "search",  // #search/kiwis
    "search/:query/p:page": "search"   // #search/kiwis/p7
  },

  help: function() {
    ...
  },

  search: function(query, page) {
    ...
  }

});

你也可以使用angularjs它是谷歌支持的大号。

【讨论】:

  • 哇!这让一切变得非常非常容易。实际上,几周前我正在查看backbone.js 的另一个项目,它看起来非常酷。谢谢!
【解决方案2】:

也许这个解决方案可以帮助你?

$("a.icon-loading-link").click(function(e){
    var link = $(e.target).prop("href"); //save link of current <a> into variable

    /* Creating new icon-tag, for example $("<img/>", {src: "link/to/file"}).appendTo("next/dt"); */

    e.preventDefault(); //Cancel opening link
    return false;       //For WebKit browsers
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-09
    • 2010-09-15
    • 2015-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多