jquery 슬라이더 추가 기능을 사용하여 조작 할 때 값을 Linux 파일에 씁니다.jquery 슬라이더에서 사용되는 Onchange 이벤트
슬라이더는 텍스트 입력 상자를 제어합니다. 상자는 읽기 전용이므로 항상 흐리게 표시됩니다. 이해할 수없는 문제는 onchange 명령이 작동하지 않는 이유입니다. 입력 명령에서 readonly 특성을 제거하면 같은 문제가 발생합니다.
텍스트 입력 상자의 값을 변경하고 Enter 키를 눌러 업데이트 할 수 있기 때문에 제 JavaScript 함수가 작동한다는 것을 알고 있습니다. 하지만 내가해야 할 일은 슬라이더가 변경 될 때마다 번호를 업데이트하는 것이므로 사용자가 입력하는 것이 아니라 슬라이더가이를 제어하기 때문에 keyup 또는 keydown 명령을 사용할 수 없습니다.
<script type="text/javascript">
$(document).ready(function() {
$("#LeftRecordSlider").slider({
range: "min",
orientation: "vertical",
value: 50,
min: 0,
max: 100,
slide: function(event, ui) {
$("#LeftRecordAmount").val(ui.value);
}
});
$("#LeftRecordAmount").val($("#LeftRecordSlider").slider("value"));
});
</script>
<script type="text/javascript">
function ChangeVolume(volumetype,volumelevel)
{
var xmlhttp;
if (window.XMLHttpRequest)
{//IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{//IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("VolumeOutput").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ChangeVolume.php?volumetype="+volumetype+"&volumelevel="+volumelevel,true);
xmlhttp.send();
};
</script>
<label for="LeftRecordAmount">Left Record Volume:</label>
<input type="text" onchange="ChangeVolume('LeftRecord',this.value)" id="LeftRecordAmount" style="border:0; width:3em; color:#0080ff; font-weight:bold;" readonly/>
<div id="VolumeOutput"></div>
완벽하게 작동합니다. 내 유일한 변화는 eval ($ ("# LeftRecordAmount"). attr ("onchange"))을 이동하는 것입니다. 을 슬라이드 부로 이동시킨다. 나는 그 변화가 가치가 있는지, 또는 그것이 사이트를 너무 많이 먹어 치울지를 평가해야 할 것이다. 고마워요! –
@ pr-, 나는 슬라이더 이벤트가 멈추었을 때 함수가 요구하는 것을 할 것이기 때문에 그것을 사용했다. 어쨌든 고마워요 :) –
좋은 지적. 대역폭의 낭비처럼 보입니다. 이 사이트는 내부 사이트이지만 상수 변경은 도스 공격을 복제 할 수 있습니다. 원래 코드를 계속 사용하는 것 같습니다. 다시 한번 감사드립니다. –