使用Tumblr在子域上响应.js

时间:2012-05-25 05:44:42

标签: cross-domain tumblr media-queries responsive-design

My website有回应。 blog section使用指向Tumblr的子域,但Respond.js的跨域版本无法正常工作。我这样做:

<script src="http://www.stevechab.com/scripts/respond.min.js"></script>
<link href="http://www.stevechab.com/scripts/respond-proxy.html" id="respond-proxy" rel="respond-proxy">
<link href="http://www.stevechab.com/scripts/respond.proxy.gif" id="respond-redirect" rel="respond-redirect">
<script src="http://www.stevechab.com/scripts/respond.proxy.js"></script>

我认为问题在于response.proxy.gif和respond.proxy.js不在blog.stevechab.com上......但这并不能破坏具有跨域版本的Respond的目的。 JS?我的假设是正确的,还是我错过了什么?有解决方法吗?

注意:我尝试了http://www.tumblr.com/themes/upload_static_file ...没有骰子。

2 个答案:

答案 0 :(得分:6)

@Steve Chab,

有两个原因 respond.js &amp; respond.proxy.js 不适合你。

  1. 您在原始域中有 respond-proxy.html 文件,而该文件应该是从您的子域提供的( blog.stevechab.com )或任何其他外部域。

  2. 当链接到带有相对网址的css文件时, respond.js / respond.proxy.js 似乎存在错误。要修复它,请使用绝对URL。您的主站点使用css样式表的相对URL,并且您的博客是绝对URL。

    • 注意:错误是由respond.proxy.js ajax / xml函数引起的

  3. 请在下面找到重新查看的工作标记,以获取 respond.js &amp; respond.proxy.js 在您的网站上工作。

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="http://www.stevechab.com/styles/styles.css">
    <!--[if (lt IE 9) & (!IEMobile 7)]>
    <link href="//blog.stevechab.com/scripts/respond-proxy.html" id="respond-proxy" rel="respond-proxy">
    <link href="//www.stevechab.com/scripts/respond.proxy.gif" id="respond-redirect" rel="respond-redirect">
    <![endif]-->
    </head>
    <body>
    <!-- Your content goes here. -->
    
    <!--[if (lt IE 9) & (!IEMobile 7)]>
    <script src="//www.stevechab.com/scripts/respond.min.js"></script>
    <script src="//www.stevechab.com/scripts/respond.proxy.js"></script>
    <![endif]-->
    </body>
    </html>
    

答案 1 :(得分:3)

引用respond.js自述文件:

  

Respond.js的工作原理是通过AJAX请求CSS的原始副本,所以如果你在CDN(或子域名)上托管你的样式表,你需要上传代理页面到启用跨域通信。

- 我的重点。跨域版本旨在使您能够处理从另一个域加载的样式表,而不是respond.js正在处理的样式表。但是,对于Tumblr,您已将第三个​​域添加到混合:static.tumblr.com,其中您的代理脚本和gif已登陆。这不会,也不会起作用。