我将PDF嵌入到我的网页中。我正在做一些愚蠢的事情来隐藏状态栏(包括下载按钮和页码),以便可以从外部控制它们(我希望能够在尝试下载文档时强制进行其他下载)。如果有什么不同(例如在框架下只能工作/不工作的解决方案),那么我正在使用React。
我可以使用URL设置PDF的活动页面,但是在加载该页面之后,我无法获取文档的滚动位置来更新页面编号。
我认为解决方案是将嵌入的PDF包含在我可以亲自控制的div中。为此,我希望嵌入的对象的高度为PDF所有页面组合的垂直高度的总和,然后将其装入具有设置高度的div中。我可以从那里监视文档的滚动位置以确定当前页面。
<div class='encasing-div'>
<div class='toolbar'/>
<object data='some.pdf' type='application/pdf'>
<embed src='some.pdf' type='application/pdf' wmode='opaque'/>
</object>
</div>
Run Code Online (Sandbox Code Playgroud)
我无法使嵌入式PDF成为文档的全部高度。我知道页面加载时文档中的页数,但是我不知道如何/是否可以使用它来适当地调整高度。
如何使嵌入对象成为整个PDF的高度,从而消除嵌入对象的滚动并允许使用外部滚动?
我在检测手势时遇到问题。每次双击时我都会收到错误,并且在互联网上搜索它的含义似乎是徒劳的 - 我只能得到不适用于我的特定情况的解决方案。
这是代码:
package com.example.rpgengine;
import android.app.Activity;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.GestureDetector.SimpleOnGestureListener;
import android.view.Menu;
import android.view.MotionEvent;
public class MainActivity extends Activity {
private ZoneView currentZone;
private GestureDetector gestureDetector;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
currentZone = (ZoneView) findViewById(R.id.zoneview);
setContentView(R.layout.activity_main);
// initialize the GestureDetector
gestureDetector = new GestureDetector(this, gestureListener);
}
@Override
public void onPause() {
super.onPause();
} // end method onPause
// release resources
@Override
protected void onDestroy() {
super.onDestroy();
} // end method onDestroy
@Override
public boolean …Run Code Online (Sandbox Code Playgroud) 我遇到了一个问题,我已经看到了很多问题,但我找不到适合我的解决方案。
只有当我推送到 Heroku 并从网络加载它时才会发生此问题。 如果我转到我网站的根目录(即 domain.com),页面将加载。如果我四处点击,页面会在更改 URL 时使用正确的组件重新呈现。如果我刷新页面、输入 URL 或通过除主页上的一组链接以外的任何方式导航到该页面,我会收到“内部服务器错误”。
我知道这是一个 React-Router 问题。我尝试将我的 devServer 配置 historyApiFallback 更改为 true。我还尝试将 historyApiFallback 中的索引更改为我的应用程序的根目录。
更新 当我进入 Heroku 上的日志时,尝试导航到 domain.com/activity 时出现此错误
2017-11-13T05:43:36.957344+00:00 app[web.1]: ReferenceError: path is not defined
2017-11-13T05:43:36.957347+00:00 app[web.1]: at /app/server.js:7:23
2017-11-13T05:43:36.957348+00:00 app[web.1]: at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
2017-11-13T05:43:36.957349+00:00 app[web.1]: at next (/app/node_modules/express/lib/router/route.js:137:13)
2017-11-13T05:43:36.957350+00:00 app[web.1]: at Route.dispatch (/app/node_modules/express/lib/router/route.js:112:3)
2017-11-13T05:43:36.957351+00:00 app[web.1]: at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
2017-11-13T05:43:36.957352+00:00 app[web.1]: at /app/node_modules/express/lib/router/index.js:281:22
2017-11-13T05:43:36.957353+00:00 app[web.1]: at param (/app/node_modules/express/lib/router/index.js:354:14)
2017-11-13T05:43:36.957354+00:00 app[web.1]: at param (/app/node_modules/express/lib/router/index.js:365:14)
2017-11-13T05:43:36.957355+00:00 app[web.1]: at Function.process_params (/app/node_modules/express/lib/router/index.js:410:3) …Run Code Online (Sandbox Code Playgroud) 如果我有一个像这样的 JavaScript 对象:
list = {
John: {
DOB: '2017-02-01'
},
Rob: {
DOB: '2016-07-09'
},
}
Run Code Online (Sandbox Code Playgroud)
我该如何将此对象排序到按其出生日期排序的对象列表中。我已经安装了 lodash,所以使用它是一个选项。
我希望结果是可映射的,即一个数组,例如:
sorted_keys = ['Rob','John']
Run Code Online (Sandbox Code Playgroud)
或者
sorted_array = [
{
Rob: {
DOB: '2016-07-09'
}
},
{
John: {
DOB: '2017-02-01'
}
},
]
Run Code Online (Sandbox Code Playgroud)