如何使用jquery文件上传调整图像客户端大小

2023-12-08

我在用blueimp jquery 文件上传在 Rails 3.2 应用程序中,通过jquery-文件上传-rails gem.

我试图在上传之前在客户端调整图像大小,但在遵循文档时遇到问题。我的代码如下。目前上传工作正常,但图像大小未调整。

通过 jquery-file-upload 调整图像大小的正确语法是什么?

(coffeescript 中显示的两种方法基于this and this文档。两者都不适合我。)

#Coffeescript

jQuery ->
  if $("#new_asset").length
    $("#new_asset").fileupload 
      dataType: "script"
      add: (e, data) ->
        types = /(\.|\/)(jpe?g|png)$/i
        file = data.files[0]
        if types.test(file.type) || types.test(file.name)
          data.context = $(tmpl("template-upload", file))
          $('#progress-container').append(data.context)
          jqXHR = data.submit()
          $("button.cancel").click (e) ->
            jqXHR.abort()
        else
          alert("#{file.name} is not a jpeg or png image file")
      progress: (e, data) ->
        if data.context
          progress = parseInt(data.loaded / data.total * 100, 10)
          data.context.find('.bar').css('width', progress + '%')
      stop: (e, data) ->
        $('.upload').hide()
      process: [
        action: "load"
        fileTypes: /^image\/(gif|jp?g)$/
        maxFileSize: 20000000 # 20MB
      ,
        action: "resize"
        imageMaxWidth: 1500
        imageMaxHeight: 1500
      ,
        action: "save"
      ]
      dropZone: $(".dropzone")
      sequentialUploads: true
      disableImageResize: /Android(?!.*Chrome)|Opera/.test(window.navigator and navigator.userAgent)
      imageMaxWidth: 1500
      imageMaxHeight: 1500
      downloadTemplateId: null

#application.js
//= require jquery-fileupload

EDIT

根据马坦萨的回答,add我的代码中的回调会阻止自动调用任何处理函数。所以我想我需要做类似的事情

...
add: (e, data) -> 
  $.each data.result, (index, file) ->
    // processing code goes here

但我在找出正确的语法或理解可用的指南时遇到了很多麻烦。

如何在添加回调中对每个文件应用调整大小处理?


我通过在添加回调中调用进程解决了这个问题,如下所示:

add: (e, data) ->
  current_data = $(this)
  data.process(->
    return current_data.fileupload('process', data);
  ).done(->
    data.submit(); 
  )

还记得在 application.js 中以正确的顺序加载 JS 文件....(这浪费了我生命中的几个小时):

//= require jquery-fileupload/vendor/jquery.ui.widget
//= require jquery-fileupload/vendor/load-image
//= require jquery-fileupload/vendor/canvas-to-blob
//= require jquery-fileupload/jquery.iframe-transport
//= require jquery-fileupload/jquery.fileupload
//= require jquery-fileupload/jquery.fileupload-ui
//= require jquery-fileupload/jquery.fileupload-process
//= require jquery-fileupload/jquery.fileupload-validate
//= require jquery-fileupload/jquery.fileupload-image
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用jquery文件上传调整图像客户端大小 的相关文章

  • 忽略 git 中的本地配置文件

    Rails 应用程序中有一些本地文件 属于我们存储库的一部分 我希望 git 忽略它们 基本上 我希望 git 忽略我对 config environments 目录和 config application rb 文件中的任何内容所做的所有
  • 如何在 Rails 控制器中调用通道方法?

    我有一个订阅用户的 ActionCable 方法 如果启动新的 convo 我也希望用户订阅新频道 我无法找出在控制器中调用通道方法的正确语法 更新 问题是消息在发送时附加到聊天框 但是当发送第一条消息时 Websocket 连接尚未建立
  • 获取设备中的当前用户ID

    如何使用设备获取控制器中的当前用户 ID 在我的控制器中我有这样的东西 def index me current user c User find me sheets c time sheets end 我收到一条错误消息 无法找到没有 I
  • 多态控制器和调用对象

    我的地址具有多态关系 可以由成员或依赖者拥有 一切看起来都很棒 直到我意识到除非我遗漏了一些东西 否则我不知道创建它的对象是什么类型 有没有办法告诉路由文件包含对象的类型 Models class Member lt ActiveRecor
  • 为什么 mongrel 没有在 Rails 3.2.rc 中启动?

    启动 mongrel 的 GEMFILE gem rails 3 1 0 gem mongrel gt 1 2 0 pre2 启动 WEBrick 的 GEMFILE 不是杂种 gem rails 3 2 0 rc2 gem mongrel
  • 在私有控制器方法中返回redirect_to

    前言 我正在使用设备进行身份验证 我试图阻止未经授权的用户查看 编辑或更新其他用户的信息 我最关心的是用户将 DOM 中的表单修改为另一个用户的 ID 填写表单 然后单击更新 我已经专门阅读过 像下面这样的东西应该有效 但事实并非如此 SO
  • Rails:CSRF 令牌不工作但已设置

    我在 Heroku 上有我的 Rails 3 应用程序 当我发送银行信息时 我得到 WARNING Can t verify CSRF token authenticity但我的 CSRF 令牌已设置 https gist github c
  • Rails Active Admin css 与 Twitter Bootstrap css 冲突

    我对 Rails 资产管道有点陌生 所以我可能做错了什么 我正在尝试为我的后端使用 Active Admin 为我的前端应用程序使用 twitter bootstrap css 我将 bootstrap css 添加到 应用程序 资产 样式
  • 创建一个简单的 Rails 3 文本助手 Gem [重复]

    这个问题在这里已经有答案了 我一直在开发我的第一个 Rails 3 插件 以打包一个我喜欢在ApplicationHelper我所有的应用程序 你可以看到整个代码在 Github 上 https github com burlesona s
  • Rails 4:资产未在生产中加载

    我正在尝试将我的应用程序投入生产 但图像和 CSS 资源路径不起作用 这是我目前正在做的事情 图像资源位于 app assets images image jpg 样式表位于 app assets stylesheets style css
  • 如何从引擎覆盖 Rails 应用程序路由?

    我有一个 Rails 应用程序 我正在尝试将 Rails 引擎集成到其中 主机应用程序有一些捕获所有路由 magic urls match gt admin rendering show match path edit gt admin r
  • Rails 控制台无法运行

    rbenv 红宝石版本 2 6 6 导轨版本 5 1 4 我正在较旧的代码库中工作 ruby 2 6 6 rails 5 4 1 这是我每天使用的代码库 我必须通过 rbenv 下载一个新的 ruby 版本作为单独的存储库 这样做在我的旧代
  • Rails、REST 架构和 HTML 5:带有预检请求的跨域请求

    在致力于使我们的网站 HTML 5 友好的项目时 我们渴望采用跨域请求的新方法 不再通过隐藏的 iframe 发布 使用访问控制 http www w3 org TR access control 根据规范 我们开始设置一些测试来验证各种浏
  • (Rails) Assert_Select 的烦人警告

    有谁知道如何让assert select在rake测试期间不输出所有那些讨厌的html警告 你知道 就像这样的东西 ignoring attempt to close body with div opened at byte 1036 li
  • 在 Rails 3 中渲染 Markdown 文本

    我想将 markdown 转换为 html 在我看来我有markdown some text variable 但我得到了错误undefined method markdown I added require BlueCoth 到envir
  • 如何加载页面特定的rails 4 js文件?

    我正在阅读资产管道的 Rails 指南文档 它指出 CoffeeScript 页面特定生成的文件 如果清单上有 require tree 指令 则默认情况下可供用户使用 这对我不起作用我必须包括这个 在特定控制器上 我缺少什么 资产管道会将
  • 如何向 jquery-file-upload basic-plugin 添加取消上传按钮

    我正在使用 jquery file upload 和 Rails 4 我从https github com tors jquery fileupload rails paperclip example https github com to
  • 将rails_admin 与rails_api 结合使用

    我最初将此发布为Rails api GitHub 上的问题 https github com sferik rails admin issues 2617 但由于不活跃 我现在将其发布在这里 我正在尝试使用rails admin使用 Rai
  • 服务器上的 Rails 会话

    我想让一些 Rails 应用程序在不同的服务器上共享同一个会话 我可以在同一服务器内完成此操作 但不知道是否可以在不同服务器上共享 有人已经做过或者知道怎么做吗 Thanks Use the 数据库会话存储 https github com
  • 通过 jQuery 选择动态 HTML 元素

    我正在构建一个 ASP NET MVC 应用程序 并且正在使用jQuery Blueimp https github com blueimp jQuery File Upload动态添加到页面的 PartialView 上的插件 根据插件的

随机推荐

  • 如何将大型 gem 转换为独立的 Rails 应用程序

    我正在构建一个社交网络 并一直在使用 gem Community engine 但在实现我的应用程序所需的大量自定义时遇到了困难 我认为这将使我更容易覆盖和添加方法 并帮助我更好地理解和学习代码 因为我将能够实际看到所有代码的实际运行 到目
  • 使用 php 按单词或文本过滤 csv 文件

    我有另一个 csv 文件 我正在尝试做一个简单的单词过滤器 例如 我的 text csv 文件如下所示 name age hobbies Tom 8 football soccer baseball wii star wars books
  • 使用hugo框架向网页添加图像

    我想将图像发布到我的博客上 是的 就这么简单 我的网站托管在 GitLab Pages 上 并使用 Hugo 框架 v0 23 我从这里分叉了我的网页 https gitlab com pages hugo 因此我的博客文件夹结构是相同的
  • ReferenceError:未定义 FullCalendar

    我现在一直在尝试使用文档中提供的示例来实现 fullcalendar 当我尝试运行它时 我收到此错误 ReferenceError 未定义 FullCalendar 我知道这条消息的含义 但我必须在哪里以及如何定义它 document ad
  • Rails 3 和 HTML 5 微数据

    在 Rails 中 是否可以使用任何 ActionView Helpers 创建 HTML 5 无值属性 我正在尝试为 google 创建 HTML 5 itemprop 微数据面包屑 这是我想要生成的输出 div div 但你可以看到项目
  • 如何从 VSPackage 获取当前运行的 Visual Studio 安装路径

    我创建了一个VSPackage这应该将一些 XML 架构文件复制到 Visual Studio 的安装路径 VS install path Xml Schemas 我的机器上安装了多个 Visual Studio Visual Studio
  • 将纯 Swift 自定义框架导入到其他 Swift 项目中

    让我们 我有一个定制的 SwiftCocoa Touch framework MyLog 它有一个简单的函数 称为printLog 我有另一个 Swift 项目 名为HelloWorld在不同的工作空间 位置 现在我需要导入自定义框架MyL
  • 通过 ICodecAPI 为 H.264 IMFSinkWriter 编码器设置属性

    我试图通过检索 ICodecAPI 接口来调整通过 ActivateObject 创建的 H 264 编码器的属性 虽然我没有收到错误 但我的设置没有被考虑在内 代码在 Windows 10 下运行 我复制用于创建 IMFSinkWrite
  • MYSQL 截断了不正确的 DOUBLE 值

    当执行下面的 SQL 查询时 UPDATE shop category SET name Secolul XVI XVIII AND name eng 16th to 18th centuries WHERE category id 476
  • Apache 无法确定 docker 容器上的服务器名称

    我正在尝试为现有站点设置自定义的 Docker 容器 为此 我想提供我自己的定制vhost配置与ServerName 但是当我尝试添加自定义vhost configuration并重新启动 apache 我收到警告 Apache 无法确定全
  • Android 设备 GPS 以编程方式打开/关闭

    我正在使用以下代码来打开 关闭 GPS Enable GPS Intent intent new Intent android location GPS ENABLED CHANGE intent putExtra enabled true
  • 你能改进 F# 中的“代码行算法”吗?

    我编写了一个小脚本来迭代文件夹中的文件以计算代码行数 该脚本的核心是这个函数 用于计算空白 注释和代码的行数 请注意 目前它是针对 C 定制的 不支持多行注释 它对我来说看起来不太好 有人有更干净的版本吗 from list of stri
  • UTC 和 GMT 有什么区别?

    我对时区有一些疑问 可以单独以 UTC 捕获时间吗 UTC 6 和 GMT 6 是否相同 这是否意味着它是美国当地时间 比如说 我的 UTC 时间为 02 01 2018 00 03 这是否意味着我的美国当地时间是 01 01 2018 1
  • 抽象类可以代替接口吗? [复制]

    这个问题在这里已经有答案了 在 Java 中 您可以创建仅包含抽象方法的抽象类 另一方面 您可以创建一个声明相同方法的接口 既然如此 能不能用抽象类来代替接口呢 不总是 一个类可以扩展only one class 一个类可以实现超过一个界面
  • 使用@View注解与在@Component注解中指定参数

    在 Angular io 文档中 它说 每个 Angular 组件都需要一个 Component 和至少一个 View 注释 LINK但即使是它的示例 也没有使用 View 注释 我的问题是 使用 View或在 Component注解中指定
  • 为什么 setnames() 会影响复制的表?

    我想创建 data table 的副本并更改新表中的列名称 当我更改 y V1 的名称时 x V1 的名称也会更改 为什么会这样 我该如何避免这种行为 Example x lt data table c 1 2 3 c 1 2 3 y lt
  • 无法打开 .accdb 文件,因为 Access 正在查找硬编码路径

    我收到了几个 accdb来自客户端的文件 我正在尝试打开它们Microsoft Access 2013 这些文件似乎可以正确打开 但每当我单击左侧的任何表或查询时 我都会收到以下错误消息 C hard coded path on clien
  • 请求 READ_SMS 权限后,包安装程序在 Android M 中崩溃

    我有一个尝试访问的登录片段 TelephonyManager getActivity getSystemService Context TELEPHONY SERVICE 这适用于 Lollipop 5 1 及以上版本的设备 当我在 Mar
  • Elasticsearch:“术语”、“匹配短语”和“查询字符串”之间的区别

    Elasticsearch 新手 尝试更好地理解这些查询之间的差异 据我所知 term匹配单个术语 需要小写才能匹配 并且两者match phrase and query string匹配一个文本字符串 term查询按原样匹配单个术语 值为
  • 如何使用jquery文件上传调整图像客户端大小

    我在用blueimp jquery 文件上传在 Rails 3 2 应用程序中 通过jquery 文件上传 rails gem 我试图在上传之前在客户端调整图像大小 但在遵循文档时遇到问题 我的代码如下 目前上传工作正常 但图像大小未调整