/*Formulaire de recherche */
/*document.getElementById('loop').addEventListener('click', function() {
var searchElement = document.querySelector('.search');
if (searchElement) {
searchElement.classList.add('click');
}
});*/
/* description produit */
/*document.addEventListener("DOMContentLoaded", function () {
const container = document.querySelector(".truncate-desc");
const btn = document.querySelector(".read-more-btn");
if (!container || !btn) return;
btn.addEventListener("click", function () {
container.classList.toggle("open");
btn.innerText = container.classList.contains("open") ? "Réduire" : "Lire la suite";
});
});*/
document.addEventListener("DOMContentLoaded", function () {
const container = document.querySelector(".truncate-desc");
const btn = document.querySelector(".read-more-btn");
if (!container || !btn) return;
btn.addEventListener("click", function () {
if (container.classList.contains("open")) {
container.classList.remove("open");
container.style.maxHeight = "120px";
btn.textContent = "Lire la suite";
} else {
container.classList.add("open");
container.style.maxHeight = container.scrollHeight + "px";
btn.textContent = "Réduire";
}
});
});
/* navigateur filtre produits */
(function() {
var pos = 0;
var rebuilding = false;
function buildPills() {
var inner = document.getElementById('jsf-inner');
if (!inner) return;
var inputs = document.querySelectorAll('.jet-filters-group input[type="checkbox"]');
if (!inputs.length) return;
inner.innerHTML = '';
inputs.forEach(function(input) {
var label = input.getAttribute('data-label') || input.getAttribute('aria-label') || '';
var pill = document.createElement('span');
pill.className = 'jsf-pill' + (input.checked ? ' active' : '');
pill.textContent = label;
pill.addEventListener('click', function() {
input.click();
setTimeout(function() {
pill.classList.toggle('active', input.checked);
}, 50);
});
input.addEventListener('change', function() {
pill.classList.toggle('active', input.checked);
});
inner.appendChild(pill);
});
}
var observer = new MutationObserver(function() {
if (rebuilding) return;
rebuilding = true;
setTimeout(function() {
buildPills();
rebuilding = false;
}, 300);
});
document.addEventListener('DOMContentLoaded', function() {
buildPills();
observer.observe(document.body, { childList: true, subtree: true });
});
document.addEventListener('click', function(e) {
var inner = document.getElementById('jsf-inner');
var track = inner ? inner.parentElement : null;
if (!inner || !track) return;
if (e.target.classList.contains('jsf-next')) {
pos = Math.min(pos + 160, inner.scrollWidth - track.offsetWidth);
inner.style.transform = 'translateX(-' + pos + 'px)';
}
if (e.target.classList.contains('jsf-prev')) {
pos = Math.max(pos - 160, 0);
inner.style.transform = 'translateX(-' + pos + 'px)';
}
});
})();
/* masquer range filter si aucun résultat */
jQuery(document).ready(function($) {
var $rangeFilter = $('.jet-range-filter');
$(document).on('jet-filter-custom-content-render', function(e, response) {
var count = parseInt(response.count) || 0;
if (count === 0) {
$rangeFilter.hide();
} else {
$rangeFilter.show();
}
});
});
Nos boucles d'oreilles d'occasion de luxe subliment chaque tenue : puces diamants, créoles, pendantes et créations de joaillerie signées. Chaque paire de seconde main est authentifiée et garantie par Francine Joaillerie à Saint-Tropez.