OpenCart 2.3 프로젝트에서 문제가 발생했습니다. 간단한 설명을 드리겠습니다.슬라이더 jquery ui와 부트 스트랩 드롭 다운 충돌
제품 목록 페이지에서 기본적으로 catalog -> view -> product -> category.tpl
으로 통화 모듈과 필터 모듈을 사용하고 있습니다. 내 제품 목록을 필터링 슬라이더를 사용하고 때
이미지를 참조하십시오, 그것은 페이지 데이터를 상쾌 (참고 : 여기 페이지를 다시로드되지 않음)하지만, 통화 드롭 다운 작동 안됨.
다시 슬라이더를 사용하면 드롭 다운이 작동합니다.
의미 : 처음으로 페이지를로드 한 후 슬라이더를 사용할 경우, 모든 홀수 차례마다 슬라이더가 작동합니다. 모든 짝수 턴마다 슬라이더가 작동하지 않습니다.
이제는 문제에 대해 약간의 아이디어가 있습니다.
코딩 부분이 있습니다.
나는 module -> filter.tpl
에 있습니다. 여기 슬라이더이 JQuery와 슬라이더 함수
$("#slider-range").slider({});
를 기록하고, 객체가 전달되어 다음과 같이 인 :
이 줄
$("#slider-range").slider({
range: true,
min: <?php echo $min_product_price ; ?>,
max: <?php echo $max_product_price; ?>,
values: [ <?php echo $amount_min; ?>, <?php echo $amount_max; ?> ],
create: function (event, ui) {
$("#amount").val("<?php echo $currency_symbol; ?> " + $("#slider-range").slider("values", 0) +" - <?php echo $currency_symbol; ?> " +
$("#slider-range").slider("values", 1));
$('#amtmin').text('<?php echo $currency_symbol; ?> '+$("#slider-range").slider("values")[0]);
$('#amtmax').text('<?php echo $currency_symbol; ?> '+$("#slider-range").slider("values")[1]);
},
slide: function(event, ui) {
$('#amtmin').text('<?php echo $currency_symbol; ?> '+$("#slider-range").slider("values")[0]);
$('#amtmax').text('<?php echo $currency_symbol; ?> '+$("#slider-range").slider("values")[1]);
$("#slider-range").val("<?php echo $currency_symbol; ?> " + ui.values[ 0 ] + " - <?php echo $currency_symbol; ?> " + ui.values[ 1 ]);
},
stop: function (event, ui) {
filter = [];
$('input[name^=\'filter\']:checked').each(function(element) {
filter.push(this.value);
});
amount=[];
var amtmin = ui.values[0];
var amtmax = ui.values[1];
amount.push(amtmin,amtmax);
$('#amtmin').text("<?php echo $currency_symbol; ?> "+$("#slider-range").slider("values")[0]);
$('#amtmax').text("<?php echo $currency_symbol; ?> "+$("#slider-range").slider("values")[1]);
window.history.pushState("","",'<?php echo $action; ?>&filter=' + filter.join(',')+'&amtmin=' + amtmin+'&amtmax='+amtmax);
$("body").load('<?php echo $action; ?>&filter=' + filter.join(',')+'&amtmin=' + amtmin+'&amtmax='+amtmax);
// window.location.href = '<?php echo $action; ?>&filter=' + filter.join(',')+'&amtmin=' + amtmin+'&amtmax='+amtmax;
}
});
포커스 :
$("body").load('<?php echo $action; ?>&filter=' + filter.join(',')+'&amtmin=' + amtmin+'&amtmax='+amtmax);
이 행 코드는 기본적으로 내 본문 태그에 새 URL을로드하고 내 머리글, 내 통화가 모두 본문에 있음을 유의하십시오. 이 코드로 어떤 일이 일어나고 있는지 알지 못합니다. 즉, 한 번 통화 드롭 다운이 작동하고 다른 시간이 작동하지 않습니다.
또한 내가 말하고 싶은 것은 마지막으로 주석 처리 된 줄을 볼 수 있습니다.
window.location.href = '<?php echo $action; ?>&filter=' + filter.join(',')+'&amtmin=' + amtmin+'&amtmax='+amtmax;
새 문서를로드하는 중 (기본적으로 새로 고침) 모든 것이 정상입니다.
하지만 페이지를 새로 고침하고 싶지 않습니다. 여러분이 도와 드릴 수 있습니까?