none
Deepzoom跨域访问,鼠标滚轮失效 RRS feed

  • 问题

  •  

    Deepzoom本地测试,鼠标滚轮是没问题的,滚动就可以缩放。跨域访问,鼠标滚轮失效,即滚动无法实现缩放,只能用点击的方式放大,这样就没法缩小了。

     

    crossdomain.xml:

    <?xml version="1.0"?>
    <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
    <cross-domain-policy>
      <allow-http-request-headers-from domain="*" headers="*"/>
    </cross-domain-policy>

     

    html页面:

     <object id="SilverlightObj" data="data:application/x-silverlight-2," type="application/x-silverlight-2" >
                            <param name="enableHtmlAccess" value="true"/>

    。。。。。。

     </object>

     

    AppManifest.xaml中:

    <Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" EntryPointAssembly="My_project" EntryPointType="My_project.App"  ExternalCallersFromCrossDomain="FullAccess" RuntimeVersion="2.0.31005.0">
      <Deployment.Parts>
        <AssemblyPart x:Name="My_project" Source="My_project.dll" />
      </Deployment.Parts>
    </Deployment>

     

    关键是如何解决鼠标滚轮失效的问题

    2008年11月21日 3:09

答案

  •  

    ExternalCallersFromCrossDomain="FullAccess" 2.0 正式版改为ExternalCallersFromCrossDomain="ScriptableOnly"

    最最重要的是:类似这种环境测试必须清空IE缓存。

    2009年1月9日 6:57

全部回复

  • 你的deepzoom跟跨域访问有啥关系啊

    2008年11月21日 3:33
    版主
  • 熊哥。是这样的。页面和xap、deepzoom访问的图片不在同一个域下。上面的代码只是想说明我为了实现跨域访问所作的设置。

    2008年11月24日 1:57
  •  guo520jie 写:

    熊哥。是这样的。xap和deepzoom访问的图片不在同一个域下。上面的代码只是想说明我为了实现跨域访问所作的设置。

     

    不在同一域下也不涉及跨域访问的问题,因为直接是Uri的地址,并不是WebClient下载的所以跟跨域没关系,注意的是你要把你的Deepzoom的图片放在IIS的站点下,同时测试的xap页面也要是http下的才可以访问,本地文件方式浏览html就看不到了

    2008年11月24日 2:53
    版主
  •  

    如果我不用跨域的理解去配置,Deepzoom根本就无法访问到图片。
    2008年11月24日 5:20
  •  guo520jie 写:

     

    如果我不用跨域的理解去配置,Deepzoom根本就无法访问到图片。

     

    跟域没关系,我机器内架了,可以访问,只有你用WebClient或者读取xml xaml wcf才涉及到跨域

    2008年11月24日 7:02
    版主
  • 我试过的。页面和xap、图片放到两个域下,不这么设置,Deepzoom根本就无法访问到图片呀。难道我哪里弄错了?

    2008年11月24日 7:34
  •  guo520jie 写:

    我试过的。xap和图片放到两个域下,不这么设置,Deepzoom根本就无法访问到图片呀。难道我哪里弄错了?

    不光是图片,还需要 dzc_output.xml SparseImageSceneGraph.xml两个xml文件,是对你图片地址说明

     

    Code Snippet

    this.msi.Source = new DeepZoomImageTileSource(new Uri("http://localhost:1000/dzc_output.xml", UriKind.Absolute));

     

     

    这里改下就ok了,其他的就把那个带着xml的文件夹一起移走,我没配置跨域策略也没问题
    2008年11月24日 7:49
    版主
  •  

    是我前面没说清楚,是页面和xap、图片在两个域下面。

     

    <object id="SilverlightObj" data="data:application/x-silverlight-2," type="application/x-silverlight-2"
                            width="300" height="250" style="position: relative">
                            <param name="enableHtmlAccess" value="true"/>

                            <param name="source" value=“http://www.msfile.com/ClientBin/My_project.xap” />

                           .........
                            </object>

    2008年12月1日 2:35
  •  打火机 写:

     

    是我前面没说清楚,是页面和xap、图片在两个域下面。

     

    <object id="SilverlightObj" data="data:application/x-silverlight-2," type="application/x-silverlight-2"
                            width="300" height="250" style="position: relative">
                            <param name="enableHtmlAccess" value="true"/>

                            <param name="source" value=“http://www.msfile.com/ClientBin/My_project.xap” />

                           .........
                            </object>

    xap的server修改iis配置支持xap了没?

    2008年12月1日 4:11
    版主
  • 我是在自己的机器上,创建了两个域。已经配置IIS支持xap。

    2008年12月1日 4:57
  • 有人搞定了吗?xap和html不在同一个域,鼠标滚轮失效的问题?
    2009年1月8日 3:45
  •  

    ExternalCallersFromCrossDomain="FullAccess" 2.0 正式版改为ExternalCallersFromCrossDomain="ScriptableOnly"

    最最重要的是:类似这种环境测试必须清空IE缓存。

    2009年1月9日 6:57