小编ROM*_*eer的帖子

使用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万
查看次数

在SQL Server中查找重复的行

我有一个组织的SQL Server数据库,并且有许多重复的行.我想运行一个select语句来获取所有这些和dupes的数量,但也返回与每个组织关联的id.

声明如下:

SELECT     orgName, COUNT(*) AS dupes  
FROM         organizations  
GROUP BY orgName  
HAVING      (COUNT(*) > 1)
Run Code Online (Sandbox Code Playgroud)

将返回类似的东西

orgName        | dupes  
ABC Corp       | 7  
Foo Federation | 5  
Widget Company | 2 
Run Code Online (Sandbox Code Playgroud)

但我也想抓住他们的身份证.有没有办法做到这一点?也许就像一个

orgName        | dupeCount | id  
ABC Corp       | 1         | 34  
ABC Corp       | 2         | 5  
...  
Widget Company | 1         | 10  
Widget Company | 2         | 2  
Run Code Online (Sandbox Code Playgroud)

原因是还有一个单独的用户表链接到这些组织,我想统一它们(因此删除欺骗,以便用户链接到同一组织而不是欺骗组织).但我想手动分配,所以我不会搞砸任何东西,但我仍然需要一个声明返回所有欺骗组织的ID,以便我可以浏览用户列表.

sql sql-server duplicates

217
推荐指数
7
解决办法
52万
查看次数

将光标更改为手指指针

我有这个a,我不知道我需要插入"onmouseover",以便光标将像常规链接一样更改为手指指针:

<a class="menu_links" onclick="displayData(11,1,0,'A')" onmouseover=""> A </a>
Run Code Online (Sandbox Code Playgroud)

我读到了我需要放的地方:

onmouseover="cursor: hand (a pointing hand)"
Run Code Online (Sandbox Code Playgroud)

但这对我不起作用.

另外,我不确定这是否被视为JavaScript,CSS或纯HTML.

html css mouseevent

214
推荐指数
6
解决办法
50万
查看次数

使用Docker Compose的交互式shell

有没有办法只使用Docker Compose在容器中启动交互式shell?我在docker-compose.yml中试过这样的东西:

myapp:
  image: alpine:latest
  entrypoint: /bin/sh
Run Code Online (Sandbox Code Playgroud)

当我使用docker-compose启动此容器时,它会立即退出.是否有任何可以添加到entrypoint命令的标志,或作为myapp的附加选项,以启动为交互式shell?

我知道有一些原生的docker命令选项来实现这一点,只是好奇,如果它也可以只使用Docker Compose.

shell interactive docker docker-compose

214
推荐指数
10
解决办法
15万
查看次数

XML中的字符无效

我目前正在处理一些XML.

我有节点,如下所示:

<node>This is a string</node>
Run Code Online (Sandbox Code Playgroud)

我传递给节点的一些字符串将包含&,#,$等字符.

<node>This is a string & so is this</node>
Run Code Online (Sandbox Code Playgroud)

这是因为&

我无法将这些字符串包装在CDATA中,因为它们需要保持原样.我试过在线查找一些字符列表,这些字符无法放入XML节点而不是CDATA.

任何人都可以指向一个方向或向我提供非法字符列表吗?

xml illegal-characters

210
推荐指数
8
解决办法
58万
查看次数

如何使正则表达式成为非贪婪的?

我正在使用jQuery.我有一个带有特殊字符块的字符串(开头和结尾).我想从特殊字符块中获取文本.我使用正则表达式对象进行字符串查找.但是,当有两个特殊字符或更多时,如何告诉jQuery找到多个结果?

我的HTML:

<div id="container">
    <div id="textcontainer">
     Cu?c chi?n pháp lý gi?a [|c? th?|nghi?m|] th? tr??ng [|test2|?ây là test l?n 2|] ch?ng khoán [|M?|day la nuoc my|] và ngân hàng ??u t? quy?n l?c nh?t Ph? Wall m?i ch? b?t ??u.
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

和我的JavaScript代码:

$(document).ready(function() {
  var takedata = $("#textcontainer").text();
  var test = 'abcd adddb';
  var filterdata = takedata.match(/(\[.+\])/);

  alert(filterdata); 

  //end write js 
});
Run Code Online (Sandbox Code Playgroud)

我的结果是:[|cơthử|nghiệm|]thịtrường[| test2 |đâylàtestlần2|]chứngkhoán[|Mỹ| day la nuoc my |].但这不是我想要的结果:(.如何获得[文本]第1次和[演示]第2次?


我在互联网上搜索信息后完成了我的工作^^.我做这样的代码:

var filterdata = takedata.match(/(\[.*?\])/g);
Run Code Online (Sandbox Code Playgroud)
  • 我的结果是:[|cơthử|nghiệm|],[| …

javascript regex expression filter regex-greedy

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

String replace()和replaceAll()之间的区别

除了以后使用正则表达式之外,java.lang.String replace()replaceAll()方法之间有什么区别?对于简单的换人一样,代替./ ,有什么不同?

java string replace

203
推荐指数
5
解决办法
20万
查看次数

下载网页的工作本地副本

我想下载一个网页的本地副本,并获取所有的CSS,图像,JavaScript等.

在之前的讨论中(例如,这里这里,两者都超过两年),通常提出两个建议:wget -phttrack.但是,这些建议都失败了.我非常感谢使用这些工具中的任何一个来完成任务; 替代品也很可爱.


选项1: wget -p

wget -p成功下载所有网页的先决条件(css,images,js).但是,当我在Web浏览器中加载本地副本时,该页面无法加载先决条件,因为尚未从Web上的版本修改这些先决条件的路径.

例如:

  • 在页面的html中,<link rel="stylesheet href="/stylesheets/foo.css" />需要更正指向新的相对路径foo.css
  • 在css文件中,background-image: url(/images/bar.png)同样需要进行调整.

有没有办法修改,wget -p以便路径正确?


选项2:httrack

httrack对于镜像整个网站来说,它似乎是一个很棒的工具,但我不清楚如何使用它来创建单个页面的本地副本.httrack论坛中有很多关于这个主题的讨论(例如这里),但似乎没有人有防弹解决方案.


选项3:另一个工具?

有些人建议使用付费工具,但我无法相信那里没有免费的解决方案.

非常感谢!

wget download offline-browsing

199
推荐指数
1
解决办法
18万
查看次数

如果包含浮动元素,为什么容器元素的高度不会增加?

我想问一下高度和浮子的工作原理.我有一个外部div和一个内部div,里面有内容.它的高度可能会根据内部div的内容而有所不同,但似乎我的内部div会溢出它的外部div.这样做的正确方法是什么?

 <html>
    <body>
        <div style="margin:0 auto;width: 960px; min-height: 100px; background-color:orange">
    	    <div style="width:500px; height:200px; background-color:black; float:right"></div>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

html css css-float

195
推荐指数
3
解决办法
18万
查看次数

Bootstrap Modal立即消失

我在使用bootstrap的网站上工作.

基本上,我想在主页中使用一个模态,由英雄单元中的按钮召唤.

按钮代码:

<button type="button" 
    class="btn btn-warning btn-large" 
    data-toggle="modal"
    data-target="#myModal">Open Modal</button>
Run Code Online (Sandbox Code Playgroud)

模态代码:

<div class="modal hide fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 id="myModalLabel">In Costruzione</h3>
  </div>
  <div class="modal-body">
    <p>Test Modal: Bootstrap</p>
  </div>
  <div class="modal-footer">
    <button class="btn" data-dismiss="modal" aria-hidden="true">Chiudi</button>
    <button class="btn btn-warning">Salva</button>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

问题是,只要我点击按钮,模态就会淡入,然后立即消失.

我很感激任何帮助.

另外,如何更改下拉三角形的颜色(朝上,没有悬停)?我正在开发一个基于橙色和棕色的网站,蓝色的东西真的很烦人.

modal-dialog twitter-bootstrap

194
推荐指数
10
解决办法
15万
查看次数