小编Aen*_*Tan的帖子

65
推荐指数
2
解决办法
5万
查看次数

在Ionic 2中使用图像资产的正确方法

Ionic 2中图像资产的最佳实践是什么?我有一堆SVG我想用作非系统图标.我发现了一些关于使用Gulp的旧技巧,但似乎Ionic团队决定将Rollup作为首选的构建工具,目前还没有关于此的文档.

有人告诉我只是添加它们www/img.有任何缺点吗?

ionic-framework ionic2 ionic3 angular

41
推荐指数
2
解决办法
7万
查看次数

快速获取远程图像尺寸的方法

我正在使用imagesize gem来检查远程图像的大小,然后只将足够大的图像推送到数组中.

require 'open-uri'
require 'image_size'
data = Nokogiri::HTML(open(url))
images = []
forcenocache = Time.now.to_i # No cache because jquery load event doesn't fire for cached images
data.css("img").each do |image|
  image_path = URI.join(site, URI.encode(image[:src]))
  open(image_path, "rb") do |fh|
    image_size = ImageSize.new(fh.read).get_size()
    unless image_size[0] < 200 || image_size[1] < 100
      image_element = "<img src=\"#{image_path}?#{forcenocache}\">"
      images.push(image_element)
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我尝试在前端使用JS来检查图像尺寸,但似乎浏览器限制一次可以加载多少图像.

使用imagesize执行它比使用JS慢得多.有没有更好更快的方法呢?

ruby open-uri ruby-on-rails image

22
推荐指数
1
解决办法
9566
查看次数

自下而上的jQuery砌体

有谁知道如何从下往上制作jQuery砌体堆栈?我写了一些基本的JS来自下而上堆叠东西,但是它不能像在最短的列上堆叠下一块砖和跨越多列的砖块那样做一些粗糙的东西.由于我对Math不熟悉,查看源代码只会让我头晕目眩.

从下往上堆叠

有人想试试吗?

javascript css jquery positioning jquery-masonry

13
推荐指数
1
解决办法
3221
查看次数

如何在span_中的span_to中包含span标签?

li = link_to 'Account', '#account', data: { toggle: 'tab' }
Run Code Online (Sandbox Code Playgroud)

我需要围绕"帐户"的跨度标记.

html ruby ruby-on-rails slim-lang

9
推荐指数
2
解决办法
1万
查看次数

查找最接近点击点的元素

这里需要一些帮助.我是一名UI设计师,他不擅长做实验性Web表单设计的数字,我需要知道哪个输入元素最接近网页上的点击点.我知道如何用点做最近邻居,但输入元素是矩形而不是点,所以我被卡住了.

我正在使用jQuery.我只需要帮助这个小算法.一旦我完成了实验,我会告诉你们我正在做什么.

UPDATE

我想过它是如何工作的.看看这个图:

最近的

每个矩形有8个点(或者更确切地说是4个点和4个线),这些点是重要的.只有x值对于水平点(红点)才有意义,只有y值对于垂直点(绿点)才有意义.x和y都是角落的重要部分.

橙色十字架是要测量的点 - 在我的用例中点击鼠标.浅紫色线是橙色十字和它可能的最近点之间的距离.

因此......对于任何给定的橙色十字,循环遍历每个矩形的8个点中的每一个,以找到每个矩形最接近橙色十字的最近边或角.具有最低值的矩形是最近的矩形.

我可以概念化和可视化它,但不能把它放入代码中.救命!

javascript algorithm math jquery nearest-neighbor

8
推荐指数
1
解决办法
3650
查看次数

与Devise一起逐步参与,持久的访客用户

我正在尝试逐渐参与我的实用程序应用程序,人们可以使用而无需注册例如notepad.cc和jsfiddle.net,我计划在用户"写入"应用程序时为用户创建一个访客用户(使用Devise) .

我在Devise wiki上找到了这个指南https://github.com/plataformatec/devise/wiki/How-To:-Create-a-guest-user,它显示了如何在浏览器会话期间创建访客用户.我想要的是让用户在后续访问中继续使用相同的来宾帐户,直到他注册,也许当我引入更多功能的订阅计划时.

如何修改指南中的内容以使其成为可能?

上面链接的指南中的代码:

# file: app/controllers/application_controller.rb

class ApplicationController < ActionController::Base

  protect_from_forgery

  # if user is logged in, return current_user, else return guest_user
  def current_or_guest_user
    if current_user
      if session[:guest_user_id]
        logging_in
        guest_user.destroy
        session[:guest_user_id] = nil
      end
      current_user
    else
      guest_user
    end
  end

  # find guest_user object associated with the current session,
  # creating one as needed
  def guest_user
    User.find(session[:guest_user_id].nil? ? session[:guest_user_id] = create_guest_user.id : session[:guest_user_id])
  end

  # called (once) when the user logs in, insert any code your …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails devise ruby-on-rails-3

8
推荐指数
1
解决办法
2066
查看次数

声音没有播放AVAudioPlayer

我搜索过,我相信我的问题非常独特.我知道使用AVAudioPlayer时的模拟器5.1错误,这不是我的问题.我在iOS 5.1设备上运行.

这是我的头文件:

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import <AVFoundation/AVAudioPlayer.h>

-(IBAction)pushBell;

@end
Run Code Online (Sandbox Code Playgroud)

和我的实施文件:

#import "BellViewController.h"

@interface BellViewController ()

@end

@implementation BellViewController

-(IBAction)pushBell {

    NSString *soundPath =[[NSBundle mainBundle] pathForResource:@"bell1" ofType:@"caf"];
    NSURL *soundURL = [NSURL fileURLWithPath:soundPath];
    NSError *error;

    AVAudioPlayer *theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:soundURL error:&error];
    [theAudio setDelegate:self];
    [theAudio setNumberOfLoops:0];
    [theAudio play];

}

@end
Run Code Online (Sandbox Code Playgroud)

我的.xib中有一个按钮来播放该文件.

为了确保我正确引用了我的音频文件,我故意输入了错误的文件名,实际上我得到了一个例外.为了确保文件可播放,我将其邮寄给自己并在设备上播放.

当我点击按钮时,我什么都没听到.没有错误.我不知道出了什么问题.

更多信息 iPhone 4与iOS 5.1 Xcode 4.3.2音频大约700kbps转换为.caf格式使用afconvert从一个大的.wav文件.

iphone audio core-audio avaudioplayer ios

8
推荐指数
3
解决办法
2万
查看次数

HUGO:在静态 js 中包含节点模块

通过npm i resize-start-end -S'.

这是包提供的说明:

// ESM
import resizeStartEnd from 'resize-start-end';

// or CommonJS
const resizeStartEnd = require('resize-start-end');
Run Code Online (Sandbox Code Playgroud)

我正在尝试将该包包含在我的 Hugo 静态目录中的 JS 文件中。以上都不起作用(找不到)。

我的 js 位于static/src/js并且 gulp 将它连接到static/js.

建议表示赞赏。

javascript node.js npm node-modules hugo

6
推荐指数
1
解决办法
1029
查看次数

深度链接无限滚动页面

我正在创建一个无限滚动的页面,该页面递归加载下一页的内容并将其附加到当前页面中。我认为浏览体验可以是很棒的、身临其境的,但当前的方法并非没有可用性缺陷。

不完全的渐进增强。使用 Ajax 时,支持后退按钮并提供深度链接总是好的。当前的无限滚动实现不支持这一点。无法为状态添加书签。

关于改善无限滚动用户体验的一些想法。需要意见。

  1. 每次加载时更改 URL 哈希,例如 /!#/2 -> /!#/3
  2. 单击后退按钮应向上滚动页面。单击前进按钮应向下滚动。
  3. 访问深层链接的行为应该像 Ajax 之前一样。转到第 3 页以及从第 3 页开始应该仅显示第 3 页的内容,而不显示第 2 页和第 1 页,因为用户没有要求它们。
  4. 应该仍然有办法让他转到第 2 页和第 1 页,就像常规分页一样。由于第3页加载时scrollTop为0,因此向上滚动事件没有用处。为此,我们可能仍然需要一个可点击的链接。
  5. 我们需要检查请求的页码是否大于当前页码,因为我们不应该在第 3 页的末尾加载第 2 页的内容。

你们有什么感想?

javascript ajax user-interface scroll deep-linking

5
推荐指数
1
解决办法
1068
查看次数