小编Jam*_*ker的帖子

"name"web pdf是否可以更好地在Acrobat中保存文件名?

我的应用程序生成PDF供用户使用.在"内容处置" HTTP标头设置为提到这里.这被设置为"inline; filename = foo.pdf",这对于Acrobat来说应该足以在保存pdf时将"foo.pdf"作为文件名.

但是,单击嵌入浏览器的Acrobat中的"保存"按钮后,要保存的默认名称不是该文件名,而是带有斜杠的URL更改为下划线.巨大而丑陋.有没有办法在Adobe中影响这个默认文件名?

URL中有一个查询字符串,这是不可协商的.这可能很重要,但在URL的末尾添加"&foo =/title.pdf"不会影响默认文件名.

更新2:我试过了两个

content-disposition  inline; filename=foo.pdf
Content-Type         application/pdf; filename=foo.pdf
Run Code Online (Sandbox Code Playgroud)

content-disposition  inline; filename=foo.pdf
Content-Type         application/pdf; name=foo.pdf
Run Code Online (Sandbox Code Playgroud)

(通过Firebug验证)可悲的是,都没有奏效.

一个示例网址是

/bar/sessions/958d8a22-0/views/1493881172/export?format=application/pdf&no-attachment=true

转换为默认的Acrobat保存为文件名

http___localhost_bar_sessions_958d8a22-0_views_1493881172_export_format=application_pdf&no-attachment=true.pdf

更新3:Julian Reschke为这种情况带来了实际的洞察力和严谨性.请提出他的回答.这似乎在FF(https://bugzilla.mozilla.org/show_bug.cgi?id=433613)和IE中被打破,但在Opera,Safari和Chrome中工作.http://greenbytes.de/tech/tc2231/#inlwithasciifilenamepdf

pdf acrobat content-type http

42
推荐指数
4
解决办法
4万
查看次数

获得窗口高度

这令我很沮丧.它应该是非常简单的东西,但我不能让它在IE中工作.我想得到当前窗口的高度:不是滚动高度,不是文档高度,而​​是实际窗口高度.我试过window.innerHeight哪个返回undefined,document.documentElement.clientHeight它给出了滚动高度.

javascript

32
推荐指数
2
解决办法
4万
查看次数

如何从Rails控制器显式声明视图?

我想从我的控制器显式调用一个视图.

现在我有:

def some_action
  .. do something ...
  respond_to do |format|
    format.xml
  end
end
Run Code Online (Sandbox Code Playgroud)

...然后它调用我的some_action.xml.builder视图.我该怎么称呼其他观点?response_to中有参数我错过了吗?

谢谢,

J.P

ruby-on-rails

21
推荐指数
4
解决办法
1万
查看次数

防止默认按iOS而不是默认拖动iOS MobileSafari?

上下文:MobileSafari/iPad上的Web应用程序,全屏和嵌入在iframe中

目标:技术,提供自定义事件处理程序点击,但 (变焦)或拖动(滚动/锅).我们希望为Press提供自定义行为,但让Safari仍然可以处理滚动/平移/缩放.

问题:这两个目标似乎是相互排斥的.要防止Press手势的默认行为,必须立即响应ontouchstart调用event.preventDefault.但是,要让Drag上的默认行为继续,我们不能在初始ontouchstart上调用event.preventDefault.一旦调用了preventDefault,就无法在该手势序列中恢复默认行为(即直到所有手指都脱落).在发生某些移动之前,无法识别拖动.

拖动被说明是最简单的示例,但我们也关心获取Pinch和Double-tap的默认行为.我们从不想要"复制图像"的默认MobileSafari按行为或选择文本.

到目前为止的尝试:

  • 保存ontouchstart事件,并在超时后,稍后调用preventDefault(就在识别Press之前).没有效果.
  • 听' oncontextmenu '.不,默认的新闻行为不会通过此事件发出信号或路由.
  • 防止所有ontouch*处理程序中的默认值,然后当我们识别拖动/ 捏合手势时,使用initTouchEvent和/或initGestureEvent模拟新事件.以编程方式创建的事件命中了我们所有的回调,但Safari似乎不关注它们,没有触发默认行为.
  • 用假动作打破Safari的Press识别.Safari在最轻微的移动中取消了一次按下,但我们允许稍微倾斜.在ontouchstart之后模拟移动事件(如上所述)不会导致Safari无法识别按下如果手指没有"真实地"移动.

我们有一套全功能的手势识别器(以Javascript,ontouch*为单位),采用Apple 原生iOS手势识别器的风格.我们没有识别任何手势的问题,我们只是不知道复制Safari免费提供的缩放/平移/双击行为的好方法.

我们不需要代码; 我们正在寻找任何理论解决方案(除了"只是自己实现平移/缩放",但如果你有一种光滑的方式来做我们感兴趣的话),这将导致合理的成功.我们也有兴趣了解其他类似尝试这样做 - 当然我们不可能是第一个尝试这样做的人吗?

备用TL; DR:有没有办法阻止默认按下(也称为点击并保持)而不是触摸开始?

webkit web-applications mobile-safari ipad touch-event

14
推荐指数
1
解决办法
6664
查看次数