javascript – JSONP vs IFrame?

很快,我将需要构建一个我们的客户可以嵌入他们自己的网站的小部件.

为了将来证明我的小部件,嵌入代码将是这样的:

<script type="text/javascript" src="path/to/remote/file.js"></script>
<div id="my_widget"></div>

iframes与JSONP的优点和缺点是什么?

iframe有任何常见的基于SEO的问题吗?

解决方法:

首先,iframe和jsonp不是互斥的:一个是渲染均值,另一个是通信均值.

您的选择是在文档内包含(即在主机DOM中创建小部件)或在iframe中包含(即为小部件创建一个新的独立DOM).

iframe的优点是沙盒:小部件与主机的javascript和css之间没有冲突.这意味着你可以安全地:

>使用/定义您想要的任何JavaScript库
>使用简单的HTML代码和简单的CSS规则(这是一个明显的维护奖励)

至于缺点:

> iframe重量很重,可能会严重降低主页的渲染速度
> iframe也会消耗更多的内存和资源,如果主机页面是在移动设备上定位的话,这可能会有问题

因此,如果假设使用您的小部件的人愿意为其“适应”他们的页面是合理的,那么就采用文档内的方式.如果没有,请使用iframe但要了解限制.

至于SEO问题,只要你动态创建小部件(无论是文档内还是iframe),搜索引擎都不会看到它.我不知道如果这就是你想要的,但那就是你会得到的;)

上一篇:javascript – 跨域jquery ajax(Jsonp):未捕获的SyntaxError:意外的令牌:(冒号)


下一篇:Django的restframework的序列化组件之对单条数据的处理