0

我正在一个网站上工作,我无法直接访问所有源文件,但可以使用 Javascript 添加额外的功能。我想做的是创建一个按钮,将“?action = delete”添加到页面URL的末尾,考虑到这个按钮(嗯,一个按钮格式的链接)将加载到网站的每个页面上(因此为什么我不能直接将 URL 放入函数中)。我已经到了可以生成按钮并使其看起来像我希望的那样的阶段,并且处于正确的位置,但是我正在努力让 href 参数与我已经找到的任何识别 Javascript 的页面一起工作。这是我到目前为止所拥有的:

$('a.wikia-button.talk').after('<div><a class="wikia-button" title="Go to normal delete page" href="???">Delete</a></div>');

三个问号是我不知道该放什么的地方。我在尝试使它起作用时发现的一个明显问题是与引号有关:单引号和双引号都已被使用,因此不能在 href 参数中再次使用(至少,我没有以任何方式了解)。这显然使得很难识别将“?action = delete”添加到URL末尾的字符串,我猜这是导致我的函数以我之前尝试过的所有方式中断的主要问题。

您可以提供的任何帮助将不胜感激!我还想指出,我对 Javascript 不太擅长,通常只是坚持更改其他人的功能。但是,到目前为止,我还没有发现任何其他人有这个特定的 Javascript 嵌套问题来窃取他们的代码,所以我希望你能帮忙!

〜伊玛目

4

1 回答 1

0

首先,报价没有问题。我是 Wikia 的普通用户,我知道您不需要在 url 中的任何参数周围加上引号。

其次,您有两个选择:计算出正确的 href 参数,或使用 onclick 属性。

选择一:我们首先计算出所需的 href:

var where = window.location.href + "?action=delete";

然后我们添加按钮,如下所示:

$('a.wikia-button.talk').after('<div><a class="wikia-button" title="Go to normal delete page" href=' + where + '>Delete</a></div>');

选择二:我们将 onclick 事件委托给按钮:

$("div").on('click', "#deleteButton", function() {
    var where = window.location.href + "?action=delete";
    window.location.href = where;
});

然后我们添加按钮,就像这样(注意没有href属性):

$('a.wikia-button.talk').after('<div><a class="wikia-button" title="Go to normal delete page" id="deleteButton">Delete</a></div>');
于 2014-06-22T08:36:26.810 回答