2010-04-26 35 views
8

有人可以帮助我在JavaScript中创建一个URL预览?如何在JavaScript中创建网址预览?

我的意思是说:我说我在我的网站上有一个链接,我希望用户能够将鼠标悬停在链接上,并弹出一个图像来显示链接目标的样子。

不要担心CSS,我得到了工作,我只需要实际的脚本来显示图像。

目前我正在通过显示实际呈现页面的iframe来做到这一点,但这不可扩展且看起来很丑。

页面显示预制图像不是一个选项,因为链接将链接到动态生成的用户内容。

+1

一个mod可以给这个'PHP'或'.net'标签吗?仅凭JS就没有办法做到这一点。 – dclowd9901 2010-04-26 18:31:57

回答

5

您需要预先存储图像。 Javascript无法截图并调整图像大小(现在)。试试这个:http://snapcasa.com/。它动态地为你拍摄图像。所有您需要做的就是热链接使用http://snapcasa.com/当图像:)

最好的特点:

  1. 图片保证是最先进的最新

  2. 你不”不得不把它们存储在你的服务器上!

  3. 免费计划有很多学分给你烧!

+0

snapcasa项目是否仍然有效? – Matt 2017-10-12 07:59:20

1

你可以使用iframe来做到这一点,或支付服务,采取截图(Doctype.com提供这个,我认为)。付费服务将需要很长时间才能生成屏幕截图。基本上,不要打扰尝试,它不会工作。

2

网站预览不能在客户端生成。预览图像需要在服务器上呈现,然后使用简单的<img>标签将其调用到HTML文档中。

基本上,你可以有一个形象的标签,如下列:

<img src="/my_preview_renderer.php?site=www.google.com" /> 

...其中my_preview_renderer.php将产生实时预览并用适当的MIME类型返回的图像数据。您可以使用任何服务器端脚本语言。

这不是一个详尽的答案,但我希望它能指出你正确的方向。

+0

那么我该如何去做服务器端呢? – 2010-04-26 18:15:10

+0

@Razor:因为我没有预览生成的实际经验,所以我会将其留作其他答案。但是我明白,生成预览并不是微不足道的,特别是当网站使用JavaScript,Flash和其他插件时。 – 2010-04-26 18:19:07

+0

@RazorStorm我需要你的帮助来解决我的问题,我想建立一个小应用程序。需要有一个文本框,当我在文本框中粘贴一个链接时,我需要看到预览。[就像我们在Facebook上聊天时粘贴任何链接,我们将得到该给定链接的小预览] – 2015-01-16 12:28:11

3

丹尼尔是没有办法客户端可以做到这一点,但一个选项将是一个免费的thumnail服务; http://www.webresourcesdepot.com/10-free-website-thumbnail-generation-services/一个不错的工具提示脚本结合:http://flowplayer.org/tools/tooltip.html

+0

谢谢!我尝试了snapcasa(这也是第一个响应中提到的),它起作用了!我制作了自己的工具提示代码,但是链接到我的插件看起来不错,我会在未来的项目中记住它。 – 2010-04-26 18:43:53

3

如果你想在你的屏幕截图更直接的控制,并希望在服务器上配置的东西,你可以在命令行上设置khtml2pngwebkit2png *生成图像。 (并且here是一些朝向使用Gecko的方向,如果你喜欢的话。)

* webkit2png提供OS X的指导,但是真的没有理由不应该在* nix上工作,因为WebKit本身是跨平台的。考虑到这一点可以作为练习留给读者,但它可能是值得的,因为KHTML在历史上落后于WebKit的新功能(HTML5,CSS3等)。

我还没有测试过任何这些解决方案,但如果您想更好地控制屏幕截图生成功能,可能已经足够了。

1

嗯,我想因为这里所有的答案都有点老了,现在你可以做到这一点使用内置在最新的浏览器JS中可用的Web-kit的工具,使用的WebRTC,或ffmpeg的工具,这样的做法可以做到在几分钟内