小编ast*_*o11的帖子

确保特定的setInterval函数实例仅运行一次

我正在处理一个div(父),它有两个其他div(菜单和内容),如下所示:

<div id="parent">
  <div id="menu"></div>
  <div id="content"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

内容div中加载的内容是一个html文件,它具有一些javascript函数,例如每5秒重新加载其内容的自动刷新.

$(document).ready(function () {
  setInterval(function () {
    grid.reloadDefaultContent(); //this reloads the content on content div.
  }, 5000);
}
Run Code Online (Sandbox Code Playgroud)

页面上有一些链接将不同的内容加载到内容div中.到目前为止一直很好,直到我回到"家",它具有自动刷新功能.问题是自动刷新从未停止过,现在我点击再次回到家中,该功能正在运行两次(或者我改变页面并返回主页的次数),将会话放在上面.我正在使用jQuery加载页面$.load().

关于如何使setInterval实例的任何想法只运行一次?

编辑:在看完我自己的问题之后,我看到它有点不清楚.我的主要问题是,当我回到家时,我的第一个setInterval实例已经运行,并且第二个实例启动,使得5秒的自动刷新变得更快,每次我都会越来越快更改页面并返回主页.这不是我想要的行为.我需要的是当我更改div上的内容时停止setInterval的实例,并在我回到主页时重新启动它.

javascript jquery setinterval

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

Delphi:TVarRec与varArray的数组

我想使用各种类型的开放数组(例如:)['string',12,123.21].在我搜索期间,我发现了两种方法.一个是array of TVarRec和另一个是使用varArray.我认为TVarRec数组是最好的选择,因为它似乎更轻量级,另一方面varArray已经有一些我必须创建的实现,如果我想使用TVarRec数组.

有人对这两种使用方式有什么看法吗?

arrays delphi variadic-functions

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

异步JavaScript不让我的函数返回?

这可能是一个非常简单和新手的问题,我甚至不确定异步调用是否应该受到责备.但无论如何...

我正在使用jQuery及其函数在.php文件上添加外部脚本.首先,让我们来看看我的外部js.(test.js):

function testFunc () {
  alert('It works!');
}
Run Code Online (Sandbox Code Playgroud)

然后我有这个脚本的.php文件:

<script>
$.getScript('supervisor/cache/test.js');
$(document).ready(function() {
  testFunc();
});
</script>
Run Code Online (Sandbox Code Playgroud)

使用此方法,testFunc();不会调用.我尝试return在调用之前插入,将其放在ready函数外部,将函数放在函数$.getScript内部ready.好吧,我不知道还能尝试什么.此外,如果我使用onClick按钮调用此功能,它将起作用.这就是为什么我认为问题可能来自jQuery的异步调用,即在真正添加脚本之前执行我的函数.但谁知道呢?以前有人遇到过同样的问题吗?

javascript jquery asynchronous function

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

有没有办法重用/压缩CSS,使其更小,更清洁?

我在外部CSS文件中有以下样式.

.callButton {
  width: 100px;
  height: 25px;
  float: right;
  /* other styles here */
  background-img: url('images/callButton.png');
}

.otherButton {
  width: 100px;
  height: 25px;
  float: right;
  /* same styles from callButton here */
  background-img: url('images/otherButton.png');
}

/* 5 more similar buttons */
Run Code Online (Sandbox Code Playgroud)

如您所见,只有属性background-img不同,但我要为每个属性使用不同的类.有没有什么方法可以为公共属性使用相同的类,并为属性使用不同的(如变量)background-img

css optimization css-selectors

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

如何在XSLT中执行"while"类循环?

我是XSLT的新手,我在这个问题上遇到了很多困难:我需要在XSLT中做类似循环的循环.我认为for-each不足以解决这个问题.

我有一个变量,它是SELECT语句的结果.它可以返回0或整数.如果值为0,则需要再次执行SELECT发送另一个参数以查看该值是否不同.

我只能考虑使用类似循环的循环,但也许它有另一种方法来实现这一点?就像使用模板并最终调用自己一样?可能吗?

像这样的东西:

<!-- initiate TEMPLATE -->
<!-- WHILE $VALUE = 0 -->
<xsl:variable name="sql.query">
    <sql:param name="SQL_QUERY">SELECT $value FROM date_table WHERE date='$date'</mx:param>
</xsl:variable>

<xsl:variable name="VALUE">
    <xsl:value-of select="sql:exec-formula('generic.sql', exsl:node-set($sql.query)//sql:param)" /> <!-- this will bring the result of the SELECT in the variable -->
</xsl:variable>

<xsl:variable name="date">
    <xsl:value-of select="$date-1" /> <!-- something like that, it doesn't matter -->
</xsl:variable>

<xsl:if test="$VALUE ='0'">
    <!-- call template again -->
</xsl:if>
<!-- end of template -->
Run Code Online (Sandbox Code Playgroud)

sql xslt loops while-loop

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