admin管理员组

文章数量:1545259

一:这种情况的话安卓会打开浏览器下载该文件,苹果的会打开页面

<a href=javascript:downloadfile("url.value") style="color: #007aff">文件.doc</a>

 

 

function downloadfile(hrefurl) {
	var url=	hrefurl;

			var agent = navigator.userAgent.toLowerCase();
			var android = agent.indexOf("android");
			if(android != -1)
			{
				window.WebViewJavascriptBridge.callHandler(
					'openhref'
					, '{"content":"' +url + '"}'
					, function(responseData) {

					}
				);

			}
			else
			{
			location.href=url;
				//var params = JSON.stringify({"url":url});
				//window.webkit.messageHandlers.Openhref.postMessage(params);
			}
}

function connectWebViewJavascriptBridge(callback) {
            if (window.WebViewJavascriptBridge) {
                callback(WebViewJavascriptBridge)
            } else {
                document.addEventListener(
                    'WebViewJavascriptBridgeReady'
                    , function() {
                        callback(WebViewJavascriptBridge)
                    },
                    false
                );
            }
        }

        connectWebViewJavascriptBridge(function(bridge) {
            bridge.init(function(message, responseCallback) {
                console.log('JS got a message', message);
                var data = {
                    'Javascript Responds': '测试中文!'
                };

                if (responseCallback) {
                    console.log('JS responding with', data);
                    responseCallback(data);
                }
            });

            bridge.registerHandler("functionInJs", function(data, responseCallback) {
                document.getElementById("show").innerHTML = ("data from Java: = " + data);
                if (responseCallback) {
                    var responseData = "Javascript Says Right back aka!";
                    responseCallback(responseData);
                }
            });
        })

 

 

 

二:这一种做法对于苹果的不是很友好,但是在安卓端能打开doc类文件

方式一:普通a标签   href属性实现

<a href="文档地址"></a>

方式二:iframe内嵌

$("<iframe src='"+ this.previewUrl +"' width='100%' height='362px' frameborder='1'>").appendTo($(".video-handouts-preview"));
此外还可以在iframe标签之间提供一个提示类似这样
<iframe :src="previewUrl" width="100%" height="100%">
 
This browser does not support PDFs. Please download the PDF to view it: <a :href="previewUrl">Download PDF</a>
</iframe>
 

方式三:通过jquery插件jquery.media.js实现(实现pdf预览功能(包括其他各种媒体文件),word等类型的文件不行)

<script type="text/javascript" src="jquery-1.7.1.min.js"></script>  
<script type="text/javascript" src="jquery.media.js"></script>
html结构:
      <body>
          <div id="handout_wrap_inner"></div>
      </body>
调用方式:
<script type="text/javascript">  
 $('#handout_wrap_inner').media({
		width: '100%',
		height: '100%',
		autoplay: true,
        src:'http://storage.xuetangx/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf',
            }); 
</script>

方式四:a标签直接打开

<a href="http://www.xdocin/xdoc?_func=to&_format=html&_cache=1&_xdoc=http://www.xdocin/demo/demo.docx" target="_blank" rel="nofollow">XDOC</a>

方式五:文件在线预览功能

<iframe src='https://view.officeapps.live/op/view.aspx?src=http://storage.xuetangx/public_assets/xuetangx/PDF/1.xls' width='100%' height='100%' frameborder='1'>
</iframe>
/*src就是要实现预览的文件地址*/
/*具体文档看这微软接口文档*/
/*补充:google的文档在线预览实现同微软(资源必须是公共可访问的)*/
<iframe :src="'https://docs.google/viewer?url="fileurl"></iframe>

 

本文标签: 文件jsDOC