jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – 如何触发任何箭头键大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个带滑块的应用程序(HTML5,JavaScript,Jquery,jquery MobilE).
 手柄可以通过触摸移动,您可以浏览1861年到2000年.我的地图上有符号,根据年份可见/不可见. See my example image.

用户单击特定按钮(“前进”)时,我还希望手柄移动.句柄应该每年进行,直到用户点击不同的按钮.
我只需点击一下就可以处理1年,手柄,年份和地图更新了更改的年份.

	function moveLeft(){
	var slider1 = $("#slider").val();
	var $slider = $("#slider");
	slider1++;
	$slider.val(slider1).slider("refresh");
	var wert1 = slider1;
		var start = new Date().getTime(); //start = 
		hideLayer2(wert1,start); 
		$('#jahr').text(wert1); 
		var $ausgabe = $("#ausgabe");
		$ausgabe.text(wert1); 
		gewaehltesJahr = wert1;

我为这个函数构建了一个for循环(for(i = slider1; i< 2000;="">函数到达2000年.我想看到每一年的更新.
即使我使用调试器查看代码,它只会在完成循环并退出函数时更新年份,处理和映射.

以下代码例:
如果我在1861年开始并初始化该函数,则句柄和地图将在最后一行的警报“alert(”vor“)之后直接跳转到1870.

function vor(){ 
	var slider1 = $("#slider").val();
	var $slider = $("#slider");
	for( var s = slider1; s < 1870;="" s++){="" $slider.val(s).slider("refresh");="" $("#slider").slider('value',s);="" alert(s);="" var="" wert1="s;" var="" start="new" date().gettime();="" start="aktuelles" datum="" hidelayer2(wert1,start);="" $('#jahr').text(wert1);="" var="" $ausgabe="$("#ausgabe");" $ausgabe.text(wert1);="" gewaehltesjahr="wert1;" }="" alert("vor");="">

按下箭头键时,也可以移动手柄.

$('.ui-slider-track .ui-btn.ui-slider-handle').focus();

我试着模仿按下一把钥匙向前走一年,但它也没有用.我试图设置一个触发器,但它没有用.有人可以帮忙吗?

var kEvent = document.createEvent('Event');
	kEvent.initKeyEvent("keypress",true,null,false,38,0);
	document.activeElement.dispatchEvent(kEvent);
最佳答案
for循环立即执行,所以你必须使用javascript计时器!

//Global flag to decide animation
//Make this false to clear the animation loop from anywhere
var animate_slider = false;

//Global timer for animation
var animation_timer;

//Call animation function
function vor(){ 
    animate_slider = true;
    animation_timer = seTinterval(function(){
        if(!animate_slider){
            clearInterval(animation_timer);
        }
        else{
            var slider1 = $("#slider").val();
            var $slider = $("#slider");
            $("#slider").slider('value',s);
            var wert1 = s;
            var start = new Date().getTime(); //start = aktuelles Datum
            hideLayer2(wert1,start); 
            $('#jahr').text(wert1); 
            var $ausgabe = $("#ausgabe");
            $ausgabe.text(wert1); 
            gewaehltesJahr = wert1;
            if(slider1 == maxvalue){
                clearInterval(animation_timer);
            }
        }
    },1000);
}

注意:

触发箭头键不是必需的&没有意义,因为它也会导致实例执行所有点击.所以即使在那里也必须使用定时器,因此你可以绕过那个&用计时器改变你的主要方法.

大佬总结

以上是大佬教程为你收集整理的javascript – 如何触发任何箭头键全部内容,希望文章能够帮你解决javascript – 如何触发任何箭头键所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。