2

如果你看一下这个页面,底部有很多空白。

我希望在该页面上使用类似 Greasemonkey 的脚本,它利用一些空白空间并在那里加载另一个页面(使用类似 iFrame 的东西)。

  • 我想在那个 iFrame 类型的东西(在下三分之一)中加载的 URL 始终View Amazon Product Page是指向的任何内容。
  • 所以,我希望代码查看页面,并找到该链接指向的位置。(因为这是变化的一点)
  • 我希望 iFrame 类型的东西位于下三分之一。(它可以是较低的四分之一,较低的五分之一..我的意思不是字面意思..!)

如果您能帮我集思广益,我将不胜感激。

选读

它不是 GreaseMonkey,但你可以假设它是

这是 Fluid.app 上的Greasekit(它很旧,但我只能使用它)。您可能甚至不需要知道这一点,因为它与 Greasekit 非常相似。所以,为了这个问题的目的,你可以假装它是。

唯一的区别是您不必这样做:

//==UserScript==
//@name        _Displaying an iframe type thing in the lower third
//@include     https://dl.dropboxusercontent.com/u/5546881/*
//@grant       none
// ==/UserScript==

我的回答尝试

var findlink  = document.getElementsByTagName('a');
for (var i = 0;i=“View Amazon Product Page” ; i++ ) {
link result = findlink.getAttribute('href')

}

$(document.body).append (
'<iframe src=+ link + >'
);
4

1 回答 1

3
  • 由于您有可用的 jQuery,请使用 jQuery 选择器来获取产品链接。
  • 然后添加 iFrame 但给它一个 id。
  • 使用 CSS 来定位和调整大小。

根据您链接的 Dropbox 页面的结构,代码如下所示:

var prodLinks = $("td.product_description a:contains('View Amazon Product Page')");
if (prodLinks.length) {
    var iframeSrc = prodLinks[0].href;
    $("body").append ('<iframe id="gmIframe" src="' + iframeSrc + '"></iframe>');

    $("#gmIframe").css ( {
        "position":     "absolute",
        "bottom":       "1em",
        "left":         "2em",
        "height":       "30%",
        "width":        "94%",
        "z-index":      "17",
        "background":   "#00FF00"
    } );
}

警告:

这只有在至少满足以下条件之一时才有效:

  • iframe 是同一个域。
  • iframed 网站不禁止跨域框架。(www.amazon.co.uk 确实禁止这种框架。)
  • 您使用的浏览器不支持跨域限制。Firefox 尊重它,我不知道 Fluid 是否这样做。
于 2013-11-24T23:34:37.903 回答