我使用下面的代码打开了一个新的浏览器选项卡,在新的浏览器选项卡中,我有一个import java.time.LocalTime;
public class HelloWorld
{
public static void main(String[] args)
{
LocalTime in = LocalTime.parse("16:00");
LocalTime out = LocalTime.parse("01:00");
int hOut = out.getHour(),
hIn = in.getHour();
int hoursDiff = hOut < hIn ? 24 - hIn + hOut : hOut - hIn,
minsDiff = (int)Math.abs(out.getMinute() - in.getMinute()),
secsDiff = (int)Math.abs(out.getSecond() - in.getSecond());
System.out.println(hoursDiff+":"+minsDiff+":"+secsDiff);
}
}
元素,它用作按钮,然后单击它会触发ajax,该ajax使用最新数据更新表格,现在,当我改变焦点时返回此选项卡,我想触发该选项卡的单击,以便通过ajax更新表数据,但它不起作用。
<span class="refresh-table-data"></span>
我可以在开发人员工具窗口中看到如下所示的元素。
请提出我在这里想念的东西吗?
答案 0 :(得分:0)
每次在窗口具有焦点时调用触发器click
(例如,要进行测试,只需在代码段外部单击,然后再次在代码段容器上单击即可)。
P.S:您也可以尝试使用document.hasFocus()
$(document).ready(function(){
var window_focus;
$(window).focus(function() {
window_focus = true;
$('button').trigger("click");
}).blur(function() {
window_focus = false;
});
$('button').click(function() {
// call ajax here:
$('body').append('has focus<br/>');
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Click here to begin<br>
<button>
sdf
</button>