小编Joh*_*nes的帖子

使用jQuery动画addClass/removeClass

我正在使用jQuery和jQuery-ui,并希望动画各种对象的各种属性.

为了解释这里的问题,我把它简化为一个div,当用户将鼠标悬停在它上面时,它会从蓝色变为红色.

我能够在使用时获得我想要的行为animate(),但是当这样做时,我动画的样式必须在动画代码中,因此与我的样式表分开.(见例1)

另一种方法是使用addClass(),removeClass()但我无法重新创建我可以获得的确切行为animate().(见例2)


例1

我们来看看我的代码animate():

$('#someDiv')
  .mouseover(function(){
    $(this).stop().animate( {backgroundColor:'blue'}, {duration:500});
  })
  .mouseout(function(){
    $(this).stop().animate( {backgroundColor:'red'}, {duration:500});
  });
Run Code Online (Sandbox Code Playgroud)

它显示我正在寻找的所有行为:

  1. 红色和蓝色之间平滑动画.
  2. 当用户快速将鼠标移入和移出div时,没有动画"过度".
  3. 如果用户在动画仍在播放时将鼠标移出/移入,则在当前"中途"状态和新"目标"状态之间正确缓解.

但是由于样式更改是定义的,animate()我必须更改那里的样式值,并且不能只指向我的样式表.定义样式的"碎片"真的让我困扰.


例2

这是我目前使用的最佳尝试addClass()removeClass(请注意,要使动画工作,您需要jQuery-ui):

//assume classes 'red' and 'blue' are defined

$('#someDiv')
  .addClass('blue')
  .mouseover(function(){
    $(this).stop(true,false).removeAttr('style').addClass('red', {duration:500});
  })
  .mouseout(function(){
    $(this).stop(true,false).removeAttr('style').removeClass('red', {duration:500});
  });
Run Code Online (Sandbox Code Playgroud)

这显示了我原始要求的属性1.和2.但是3不起作用.

我明白这个的原因:

当动画addClass()removeClass()jQuery为元素添加临时样式,然后递增适当的值,直到它们达到提供的类的值,然后才实际添加/删除类.

因此,我必须删除style属性,否则如果动画中途停止,则样式属性将保留并永久覆盖任何类值,因为标记中的样式属性比类样式具有更高的重要性.

但是,当动画完成一半时,它还没有添加新类,因此使用此解决方案,当用户在动画完成之前移动鼠标时,颜色会跳转到上一个颜色.


我理想的是能够做到这样的事情:

$('#someDiv')
  .mouseover(function(){
    $(this).stop().animate( getClassContent('blue'), {duration:500});
  })
  .mouseout(function(){
    $(this).stop().animate( getClassContent('red'), …
Run Code Online (Sandbox Code Playgroud)

javascript css jquery jquery-ui jquery-animate

219
推荐指数
5
解决办法
32万
查看次数

你需要安装什么来在Windows上使用Clang来构建64位的c ++ 14?

更新:

我写了一篇详细的教程,其中包含了这个问题的前两个答案:http://blog.johannesmp.com/2015/09/01/installing-clang-on-windows-pt1/



TL; DR

在Windows上,给出以下程序:

#include <iostream>

int main()
{
    int arr[] = {1, 2, 3, 4, 5};
    for(auto el : arr)
    {
        std::cout << el << std::endl;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我希望能够做到以下几点:

clang++ hello.cpp -o hello.exe -std=c++14
Run Code Online (Sandbox Code Playgroud)

并得到一个64位可执行文件,只是工作.我不想附加大量的-I包含来告诉clang在哪里找到iostream或其他标准的c ++标题; 我不想在多个步骤中进行链接.

我不太关心性能,效率,使用什么链接器等等.我只是想能够让clang/gcc /无论设置正确,以便我可以使用单个,快速和脏的控制台命令,如上面的一个.

我需要安装什么才能正常工作


问题

作为一个主要的mac/linux用户,我习惯于只使用包管理器来安装最新版本的clang,这只是有效的.

我现在正试图在Windows上设置clang/gnu编译器,这似乎要困难得多,如果只是因为那里几乎没有简单的文档(我已经能够找到)

我试过按照这个教程:https://yongweiwu.wordpress.com/2014/12/24/installing-clang-3-5-for-windows - 并且能够使用它来获得构建和链接的clang (使用gcc 4.8.2),但生成的二进制文件是32位.

我已经尝试安装最新的prengilt clang(3.6.2)和64位版本的mingw-w64(4.9.3用64位posix和sjlj用于例外),我得到:

hello.cpp:1:10: fatal error: 'iostream' file not …
Run Code Online (Sandbox Code Playgroud)

windows gcc llvm-clang c++11 clang++

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

如何使用存储的MYSQL过程中的表输出

我一直在寻找最后一小时左右,并没有找到这个看似简单的问题的确定答案:

如何调用存储的MYSQL函数/过程并在其他SELECT查询中使用其输出?


虽然这显然不起作用,但这是我想要的东西:

SELECT P.`id` FROM (CALL test_proc()) AS P
Run Code Online (Sandbox Code Playgroud)

其中test_proc()的定义如下:

DROP PROCEDURE IF EXISTS test_proc;
DELIMITER ;;
CREATE PROCEDURE test_proc()
BEGIN
    SELECT * FROM `table`;
END;;
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

仅作为一个例子.我也可以使用存储函数.

mysql select stored-procedures stored-functions

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

laravel 4 - 如何限制(采取和跳过)雄辩的ORM?

TL; DR

您是否可以限制使用的Eloquent ORM查询take(),skip()以便生成的mysql查询也受限制,并且它不必返回整个数据集?

如果是这样,你会如何修改:

$test = User::find(1)->games->toArray();
Run Code Online (Sandbox Code Playgroud)

包括limit 3 offset 2


表:

users       games           userGames
-- id       -- id           -- user_id
-- name     -- name         -- game_id
            -- steam_id
Run Code Online (Sandbox Code Playgroud)

楷模:

class User extends Eloquent {
    public function games() {
        return $this->belongsToMany('Game', 'userGames', 'user_id', 'game_id');
    }
}

class Game extends Eloquent {
    public function users() {
        return $this->belongsToMany('User', 'userGames', 'user_id', 'game_id');
    }
}
Run Code Online (Sandbox Code Playgroud)

查询生成器中的限制

使用常规Laravel 查询生成器,我可以得到所有games属于userID 1,并限制其结果与take()和 …

mysql limit laravel eloquent laravel-4

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

在Laravel 4迁移中创建MYSQL过程

有没有办法在Laravel 4迁移中生成存储的MYSQL程序?

例如,这是一个存储为字符串的简单过程生成查询(通过Heredoc)

    $query = <<<SQL
DELIMITER $$
DROP PROCEDURE IF EXISTS test$$
CREATE PROCEDURE test()
BEGIN
    INSERT INTO `test_table`(`name`) VALUES('test');
END$$
DELIMITER ;
SQL;

    DB:statement(DB::RAW($query));
Run Code Online (Sandbox Code Playgroud)

在迁移up()功能中运行此命令时出现此错误:

在此输入图像描述

mysql stored-procedures database-migration laravel laravel-4

15
推荐指数
2
解决办法
8148
查看次数

在父div中对齐Child Div

可能重复:
使外部div自动与其浮动内容的高度相同

我觉得我在这里错过了很简单的东西......

我们有一个简单的设置:包含子div的父div.我想要:

  • 让父母根据孩子调整其身高
  • 将子项与父项的右边缘对齐,而不是默认左边.

使用float:right将导致父级不再正确调整大小并且子级"跳出"父级.

我尝试过使用align: right,text-align: right但到目前为止还没有骰子.

HTML:

    <div id="parent"> <p>parent</p>
        <div class="child"> <p>child</p> </div>

        <div class="child right"> <p>child2</p> </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

CSS:

    div{ padding: 15px; margin: 5px; }
    p{ padding: 0; margin: 0; }

    #parent{
        background-color: orange;
        width: 500px;
    }

    .child{
        background-color: grey;
        height: 200px;
        width: 100px;
    }

    .right{ float: right; } // note: as the commenters suggested I should also be using a float:left on the other child.
Run Code Online (Sandbox Code Playgroud)

结果: …

html css parent alignment

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

MAMP Mysql错误 - 无法打开日志

我已经使用MAMP安装了几个星期了,当我今天启动它时它就无法启动.没有运行mysql进程所以我检查了错误日志,当我启动服务器时显示以下内容:

130826 14:19:55 mysqld_safe Starting mysqld daemon with databases from /Applications/MAMP/db/mysql
130826 14:19:55 [Warning] You have forced lower_case_table_names to 0 through a command-line option, even though your file system '/Applications/MAMP/db/mysql/' is case insensitive.  This means that you can corrupt a MyISAM table by accessing it with different cases. You should consider changing lower_case_table_names to 1 or 2
130826 14:19:55 [Warning] One can only use the --user switch if running as root

130826 14:19:55 [Note] Plugin 'FEDERATED' is disabled.
130826 14:19:55 …
Run Code Online (Sandbox Code Playgroud)

mysql binary-log mamp error-log

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

是否可以让 clang++ 相对链接 dylib 而不是使用 install_name_tool ?

概括

将可执行文件与 dylib 链接时,是install_name_tool使 dylib 路径相对于可执行文件的唯一方法,还是在 clang 的链接步骤中可以这样做?


设置

鉴于以下项目结构:

 - Project Root
    | compile.sh
    - lib_src
        | myprint.cpp
        | myprint.h
    - main_src
        | main.cpp
Run Code Online (Sandbox Code Playgroud)

使用这些文件:https://gist.github.com/JohannesMP/8fa140b60b8ffeb2cae0

运行compile.sh(为了简单起见,在这里使用而不是 make 文件)会产生以下文件:

 - Project Root
    | main               (a unix executable linked to myprint.dylib)
    | myprint.dylib      (a dynamic library that main uses)
Run Code Online (Sandbox Code Playgroud)

./main在项目中使用while 'd运行程序cd工作正常,但尝试从其他任何地方运行它(例如通过简单地双击它)将导致以下错误:

dyld: Library not loaded: myprint.dylib
  Referenced from: /Users/Jo/Sandbox/libtest/main
  Reason: image not found
Trace/BPT trap: 5
Run Code Online (Sandbox Code Playgroud)

当使用检查 main 时,otool我可以看到这是因为 myprint.dylib 的路径没有根据可执行文件定义: …

macos shared-libraries dylib clang++

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

为什么在输入时忽略 setCustomValidity('') (Chrome 65)

注意:据我所知,这个问题不是以下问题的重复问题:


概述

给定一个字段:

  • 具有pattern用于验证的属性集,例如"[a-f,0-9]{4}"用于一个4个字符的十六进制字符串输入。
  • oninvalid设置setCustomValidity('...some message...')为定义自定义验证消息
  • oninput设置setCustomValidity('')为在输入时重置

这是一个示例:

/* jshint esnext: true */
const form   = document.querySelector("#form");
const field  = document.querySelector("#field");
const output = document.querySelector("#output");

form.addEventListener('submit', (e) => {
  console.log("SUBMIT");
  output.textContent = field.value;
  e.preventDefault(); // Prevent default POST request
});

field.oninvalid = (event) => {
  console.log("INVALID");
  event.target.setCustomValidity('must be valid 4 hex characters');
}

field.oninput = (event) => {
  console.log("INPUT"); …
Run Code Online (Sandbox Code Playgroud)

html javascript validation google-chrome input

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

如何在不修改本地文件的情况下取消跟踪 Perforce 更改列表中的更改(P4V 2015.2)?

注意:这个问题与How do you clear the default changelist without altering your worktree in Perforce. 我的论点是,虽然类似,但这个问题专门针对 P4V 客户端。

概述

假设我正在使用 perforce 来跟踪文件。文件 ( file1)的当前状态在服务器上Depot与本地相同Filesystem出于说明目的,我还将显示默认更改列表的当前“状态”:

| Depot | Filesystem | Changelist     |
|-------+------------+----------------|
| file1 | file1      | <empty>        |
Run Code Online (Sandbox Code Playgroud)

如果我离线进行更改(file1现在是file2),perforce 还不会知​​道它(我知道理想情况下这不应该发生,并且应该始终跟踪所有更改,并且文件应该被写保护,但是如果 perforce 没有运行,月亮在错误的季度等,它可以,所以为了争论,假设这确实发生了):

| Depot | Filesystem | Changelist     |
|-------+------------+----------------|
| file1 | file2      | <empty>        |
Run Code Online (Sandbox Code Playgroud)

如果我Reconcile Offline Work...或将文件手动添加到更改列表中,更改列表现在会知道此更改:

| Depot | Filesystem | Changelist     |
|-------+------------+----------------| …
Run Code Online (Sandbox Code Playgroud)

perforce p4v

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