如何在javascript/jquery中进行非阻塞睡眠?
在使用jquery格式化和编辑返回的rss feed(字符串)之前,我从RSS提要中提取内容.我replace用来替换字符串和字符,如下所示:
var spanish = $("#wod a").text();
var newspan = spanish.replace("=","-");
$("#wod a").text(newspan);
Run Code Online (Sandbox Code Playgroud)
这非常有效.我也试图在某一点之后删除所有文本.与截断类似,我想隐藏从"示例"一词开始的所有文本.
在这个特定的RSS提要中,单词示例位于每个提要中.我想隐藏"example"所有文字,跟随那个词.我怎么能做到这一点?
我有以下控制器类
package com.java.rest.controllers;
@Controller
@RequestMapping("/api")
public class TestController {
@Autowired
private VoucherService voucherService;
@RequestMapping(value = "/redeemedVoucher", method = { RequestMethod.GET })
@ResponseBody
public ResponseEntity redeemedVoucher(@RequestParam("voucherCode") String voucherCode) throws Exception {
if(voucherCode.equals( "" )){
throw new MethodArgumentNotValidException(null, null);
}
Voucher voucher=voucherService.findVoucherByVoucherCode( voucherCode );
if(voucher!= null){
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "application/json; charset=utf-8");
voucher.setStatus( "redeemed" );
voucher.setAmount(new BigDecimal(0));
voucherService.redeemedVoucher(voucher);
return new ResponseEntity(voucher, headers, HttpStatus.OK);
}
else{
throw new ClassNotFoundException();
}
};
Run Code Online (Sandbox Code Playgroud)
}
对于异常处理,我使用的是Spring3.2建议处理程序,如下所示
package com.java.rest.controllers;
@ControllerAdvice
public class VMSCenteralExceptionHandler extends ResponseEntityExceptionHandler{ …Run Code Online (Sandbox Code Playgroud) 我在我的网站中使用FullCalendar插件来显示日历事件.我现在要添加的是带有名称的下拉菜单,如果下拉菜单更改值,则根据菜单的值重新加载事件.
如果是另一个单词,默认情况下我会加载我拥有的事件.下拉菜单将在一个菜单中包含所有用户.从该菜单中,我可以更改用户名以在同一页面上查看其他用户事件.
我试图在下拉菜单上添加.change()事件,并在fullCalendar上添加refetchEvents,但它无法正常工作.
有人可以通过传递$('#users_menu')的值来帮助我重新加载这个事件.
以下是我目前的代码
$(document).ready(function() {
$('#calendar').fullCalendar({
header: {
right: 'prev,next today',
center: 'title',
left: 'month,agendaWeek,agendaDay'
},
events: {
url: "ajax/getMyEvents.php",
type: 'POST',
data: {
user_id: $('#users_menu').val()
}
},
timeFormat: 'h:mm TT{ - h:mm} TT',
defaultView: 'agendaDay',
eventDrop: function(event, delta, minuteDelta, allDay, revertFunc) {
if (!confirm("Are you sure about this change?")) {
revertFunc();
}
updateEvent(event, delta, minuteDelta, allDay, 'Drop', revertFunc);
},
eventResize: function(event, delta, minuteDelta, revertFunc) {
if (!confirm("Are you sure about this change?")) {
revertFunc();
} …Run Code Online (Sandbox Code Playgroud) 我在使用这个array.All<>功能时遇到了困难.
private bool noBricksLeft() {
bool[] dead = new bool[brick.Length];
for (int i = 0; i < brick.GetLength(0); i++) {
if (brickLocation[i, 2] == 0)
dead[i] = true;
else
continue; // move onto the next brick
}
if (dead.All(dead[] == true)) // IF ALL OF THE ELEMENTS ARE TRUE
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud)
我想知道我怎么能实现if (dead.All(dead[] == true))?
我有这个玉文件:
!!! 5
html
head
title test include
style(type='text/css')
//- DOES NOT WORK!
include test.css
body
//- works
include test.css
div
//- works
include test.css
Run Code Online (Sandbox Code Playgroud)
输出:
$ jade -P test.jade
rendered test.html
$ cat test.html
<!DOCTYPE html>
<html>
<head>
<title>test include</title>
<style type="text/css">
//- DOES NOT WORK!
include test.css
</style>
</head>
<body>body { color: peachpuff; }
<div> body { color: peachpuff; }
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
当然,我可以简单地链接css文件,但我不想.
在页面上附加25个圆圈后,我运行以下功能:
var transitionPage = function () {
startThePage();
var height = $(document).height() - 20
, width = $(document).width()
;
d3.selectAll("circle")
.transition().duration(2500)
.style("fill", "steelblue")
.attr("r", 15)
.transition().duration(1000)
.attr("cy", (height / 2))
.each(function (d, i) {
d3.select(this)
.transition().duration(1000)
.attr("cx", 30 + (i * width / 25));
});
}
Run Code Online (Sandbox Code Playgroud)
这很好,并且正确地沿着页面中间水平排列它们.
但是,我无法弄清楚如何将每个圆变换为正方形或矩形.
我该如何处理这个问题?
我还在试图弄清楚如何在递归的AJAX调用中使用jQuery延迟对象.我有这样的代码
function request(page, items){
//building the AJAX return value for JSFiddle dummy AJAX endpoint
var ret = {
totalPage: 10,
currentPage: page,
items: []
};
for (var i = page; i < (page + 5); i++){
ret.items.push(i);
}
//calling the AJAX
$.ajax({
url: '/echo/json/',
method: 'POST',
dataType: 'json',
data: {
delay: 1,
json: JSON.stringify(ret)
},
success: function(data){
if (data.currentPage <= data.totalPage){
var filtered = data.items.filter(function(el){
return el % 2 == 1;
});
var newitems = items.concat(filtered);
console.dir(newitems);
request(data.currentPage + 1, …Run Code Online (Sandbox Code Playgroud) 我正在使用Raphael绘制一个对象,然后使用canvg将其转移到HTML canvas元素,以便我可以使用toDataURL将其保存为PNG.但是当我使用canvg时,生成的图像会模糊不清.例如,下面的代码产生了这个(raphael在顶部,canvg在底部):

<html>
<head>
<script src="lib/raphael-min.js"></script>
<script type="text/javascript" src="http://canvg.googlecode.com/svn/trunk/rgbcolor.js"></script>
<script type="text/javascript" src="http://canvg.googlecode.com/svn/trunk/StackBlur.js"></script>
<script type="text/javascript" src="http://canvg.googlecode.com/svn/trunk/canvg.js"></script>
<script src="lib/raphael.export.js"></script>
</head>
<body>
<div id="raph_canvas"></div><br>
<canvas id="html_canvas" width="50px" height="50px"></canvas>
<script language="JavaScript">
var test=Raphael("raph_canvas",50,50);
var rect=test.rect(0,0,50,50);
rect.attr({fill: '#fff000', 'fill-opacity':1, 'stroke-width':1})
window.onload = function() {
var canvas_svg = test.toSVG();
canvg('html_canvas',canvas_svg);
var canvas_html = document.getElementById("html_canvas");
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
在toDataURL创建的png中也很明显.知道这里发生了什么吗?我不认为这与重新调整大小有关.我尝试过设置ignoreDimensions:True和其他一些东西.
另一个数据点.如果我使用raphael输出一些文本,然后使用canvg,它不仅模糊,而且字体错误!

这是test.rect(0.5,0.5,50,50)建议.仍然模糊:

实际上,我在主视图容器中通过片段在单个活动中使用整个应用程序.一个片段包含viewPager当我点击了取而代之的是标题按钮片段LoginFragment和后退,我们保持backstack这样的含viewPager将在顶部片段但我们得到了在当前项目的空白视图viewPager.