0

我被要求实现一个通用的 Web 小部件,它可以嵌入到驻留在其他域中的任意网页中。小部件是由 Java 后端生成的简单表单,连同通常的姓名、名字和电子邮件字段一起上传文件 (an <input type="file">)。由于需要进度条并且用户必须能够取消文件上传,我想我需要使用 AJAX。

我使用 JQuery Form 插件创建了一个仅包含此特定小部件的独立页面,将其调整到我的后端并且它确实有效。但!我仍然必须找到一种将其嵌入现有页面的方法。你是怎么做到的?我对前端开发没有太多经验,所以我不知道是否有典型的方法来实现这一点。

我尝试使用 an iframe,但找不到一种方法来设置自身的样式iframe使用户不会注意到它是 an iframe,就像 HTML5seamless属性会做的那样(最新的 Chrome 并且只尝试了 CSS)。设置内容的样式是另一回事:可以iframe继承主机页面的样式吗?甚至可以iframe在主机页面中设置样式吗?跨浏览器?

我还尝试了 AJAX-load使用 JQuery 的小部件并将其放入主机页面的 DOM 中。这有效,但显然只有当小部件(现在是主机页面的一部分)和后端位于同一域中时,情况并非如此。我能够将我的小部件包含在 JSONP 中,但是文件上传将无法正常工作,因为后端仍在另一个域中。

因此,我遇到了与解决方案有关的样式问题iframe,以及与 AJAX 解决方案有关的跨域问题。也许我把事情弄得太复杂了,我不知道。

有人可以指出我正确的方向吗?谢谢!

4

0 回答 0