Joywork/js/raion_sale.js

151 lines
4.8 KiB
JavaScript
Raw Normal View History

2026-05-22 20:21:54 +02:00
jQuery(document).ready(function($) {
var kol_r = 0;
$("#districtsList input[type=checkbox].active").each(function(){ kol_r++; });
if ( kol_r >0 ) { $('#raion-select').html('Районы: '+kol_r+''); }
else { $('#raion-select').html('Выбрать'); }
$("#raion-select").click(function(){
$("#raion__map").show();
$(".raion-popup").show();
$("body").addClass("lock");
$("body").animate({ scrollTop: 200}, 500 );
return false;
});
$("#raion-closer, .raion").click(function() {
var kol_r = 0;
$("#districtsList input[type=checkbox].active").each(function(){
kol_r++;
});
if ( kol_r >0 )
{
$('#raion-select').html('Районы: '+kol_r+'');
$('#subway-map-select').addClass('disabled');
$('#subway-map-select').attr("disabled",true);
}
else
{
$('#raion-select').html('Выбрать');
$('#subway-map-select').removeClass('disabled');
$('#subway-map-select').attr("disabled",false);
}
$('#raion-select').show();
$("#raion__map").hide();
$(".raion-popup").hide();
$("body").removeClass("lock");
$("body").animate({ scrollTop: 550}, 500 );
});
});
jQuery.fn.myAddClass = function (classTitle) {
return this.each(function() {
var oldClass = jQuery(this).attr("class");
oldClass = oldClass ? oldClass : '';
jQuery(this).attr("class", (oldClass+" "+classTitle).trim());
});
}
jQuery.fn.myRemoveClass = function (classTitle) {
return this.each(function() {
var oldClassString = ' '+jQuery(this).attr("class")+' ';
var newClassString = oldClassString.replace(new RegExp(' '+classTitle+' ','g'), ' ').trim()
if (!newClassString)
jQuery(this).removeAttr("class");
else
jQuery(this).attr("class", newClassString);
});
}
jQuery.fn.hasAttr = function(name) {
return this.attr(name) !== undefined;
};
$(window).load(function () {
var svgobject = document.getElementById('Layer_1');
if ('contentDocument' in svgobject)
{
var svgdom = svgobject.contentDocument;
}
$("#districtsList input[type=checkbox].active").each(function(){
var id = $(this).attr("data-id");
$("#"+id, svgdom).myAddClass("active");
});
$("#districtsList input[type=checkbox]").change(function() {
var id = $(this).attr("data-id");
console.log(id);
if (this.checked) {
console.log('checked');
$(this).addClass("active");
$("#"+id, svgdom).myAddClass("active");
}
else {
$("#"+id, svgdom).myRemoveClass("active");
$(this).removeClass("active");
}
});
$("#regionsList li").click(function() { // выбор целой области
var id = $(this).attr("id");
if ($(this).hasClass("active")) {
$("."+id, svgdom).myRemoveClass("active");
$(this).removeClass("active");
$('#districtsList input[type=checkbox].'+id).removeAttr("checked");
$('#districtsList input[type=checkbox].'+id).removeClass("active");
}
else {
$("."+id, svgdom).myAddClass("active");
$(this).addClass("active");
$('#districtsList input[type=checkbox].'+id).attr("checked","checked");
$('#districtsList input[type=checkbox].'+id).addClass("active");
}
});
$("#districtsList input[type=checkbox] + span").hover(
function () {
var id = $(this).siblings("input").attr("data-id");
$("#"+id, svgdom).myAddClass("hover");
},
function () {
var id = $(this).siblings('input').attr("data-id");
$("#"+id, svgdom).myRemoveClass("hover");
}
);
$("#regionsList li").hover(
function () {
var id = $(this).attr("id");
$("."+id, svgdom).myAddClass("hover");
$('#districtsList input[type=checkbox].'+id).addClass("hover");
},
function () {
var id = $(this).attr("id");
$("."+id, svgdom).myRemoveClass("hover");
$('#districtsList input[type=checkbox].'+id).removeClass("hover");
}
);
$(".area", svgdom).hover(
function () {
var id = $(this).attr("id");
$("#districtsList input[data-id="+id+"]").addClass("hover");
},
function () {
var id = $(this).attr("id");
$("#districtsList input[data-id="+id+"]").removeClass("hover");
}
);
$(".area", svgdom).click(function() {
var id = $(this).attr("id");
$('#districtsList input[data-id="'+id+'"]').trigger('click');
});
});