-1) {
let s = strcode.indexOf("", e);
scripts.push(strcode.substring(s_e+1, e));
strcode = strcode.substring(0, s) + strcode.substring(e_e+1);
}
for(let i=0; i 0 ){
donation = form.donation.value;
}
var telephone = form.telephone.value;
var email = form.email.value;
var commune = form.commune.value;
var code_postal = form.code_postal.value;
var message = form.message.value;
if( form.infos !== undefined && form.infos.value !== "" ){
message = form.infos.value + "\n\n" + message;
}
var cnil = form.cnil.value;
var emplacement = form.emplacement.value;
var gsm = form.gsm.value;
var comment = form.comment.value;
let confirm = "page";
if( form.confirmation !== undefined && form.confirmation.value === "popin" ){
confirm = "popin"
}
if( nom != "" && prenom != "" && telephone != "" && email != "" && commune != "" && code_postal != "" ){
chargement.style['display'] = "flex";
setTimeout(function(){
chargement.style['opacity'] = 1;
},10);
var xhr_contact = new XMLHttpRequest();
xhr_contact.overrideMimeType("application/json");
xhr_contact.onreadystatechange = function () {
if (this.readyState === 4 && this.status === 200) {
var response = JSON.parse(xhr_contact.responseText);
if (response.results == "OK") {
confirmation_contact(true,confirm);
sending_data = false;
//el.innerHTML = response.html;
} else {
confirmation_contact(true,confirm);
chargement.style['display'] = "none";
console.log( response.results, response.html );
}
}
};
contact_form.append('d', d);
contact_form.append('id_page', id_page);
contact_form.append('projet', projet);
contact_form.append('donation', donation);
contact_form.append('nom', nom);
contact_form.append('prenom', prenom);
contact_form.append('telephone', telephone);
contact_form.append('email', email);
contact_form.append('commune', commune);
contact_form.append('code_postal', code_postal);
contact_form.append('message', message);
contact_form.append('cnil', cnil);
contact_form.append('emplacement', emplacement);
if( guide_du_neuf ){
contact_form.append('guide_du_neuf', true);
}
contact_form.append('gsm', gsm);
contact_form.append('comment', comment);
xhr_contact.open("post", '/contact_xhr.php', true);
xhr_contact.send(contact_form);
} else {
var fields = [
"nom",
"prenom",
"telephone",
"email",
"commune",
"code_postal"
];
for( var f = 0 ; f < fields.length ; f ++ ){
if( form[fields[f]].value == '' ){
form[fields[f]].style['background'] = '#FFCCCC';
} else{
form[fields[f]].style['background'] = 'inherit';
}
}
sending_data = false;
}
}
return false;
}
if (typeof check_projet_contact_form === 'undefined') {
function check_projet_contact_form(form) {
const actives = form.querySelectorAll(".active");
for( let active of actives){
active.classList.remove("active");
}
if (event.target.name === "select_investir") {
form.select_investir.classList.add("active");
form.projet.value = "investir";
form.donation.value = 0;
} else if (event.target.name === "select_habiter") {
form.select_habiter.classList.add("active");
form.projet.value = "habiter";
form.donation.value = 0;
} else if (event.target.name === "select_donation_habiter" || event.target.name === "select_donation_investir" ) {
form.select_donation.classList.add("active");
event.target.classList.add("active");
form.projet.value = "";
form.donation.value = event.target.value;
}
}
}
let dropdown_donation_open = false;
function open_dropdown_donation(el, force){
event.stopPropagation();
if(dropdown_donation_open || force){
el.style['display'] = 'none';
dropdown_donation_open = false;
} else {
el.style['display'] = 'block';
dropdown_donation_open = true;
}
}
if (typeof fill_input === 'undefined') {
function fill_input(form,projet_select) {
let select_projet_title_text = "Sélectionnez votre projet";
switch ( parseInt( projet_select ) ){
default:
case 1 :
form.projet.value = "habiter";
form.donation.value = 0;
select_projet_title_text = "Habiter";
break;
case 2 :
form.projet.value = "investir";
form.donation.value = 0;
select_projet_title_text = "Investir";
break;
case 3 :
form.projet.value = "gestion";
form.donation.value = 0;
select_projet_title_text = "Faire gérer mon bien";
form.message.value = "Je souhaite mettre mon bien en location"
break;
case 4 :
form.projet.value = "gestion";
form.donation.value = 0;
select_projet_title_text = "Trouver une location";
form.message.value = "Je recherche une location"
break;
case 5 :
form.projet.value = "";
form.donation.value = 1;
select_projet_title_text = "Donation pour habiter";
break;
case 6 :
form.projet.value = "";
form.donation.value = 2;
select_projet_title_text = "Donation pour investir";
break;
}
form.select_projet_title.innerText = select_projet_title_text;
}
}
let select_project_open = false;
function open_select_project(el, force){
event.stopPropagation();
if(select_project_open || force){
el.style['display'] = 'none';
select_project_open = false;
el.parentNode.classList.remove("select_opened");
} else {
el.style['display'] = 'flex';
select_project_open = true;
el.parentNode.classList.add("select_opened");
}
}
let unwrap_elements = [];
function unwrap(el){
let wrapper = el.parentNode;
let help_text = el.querySelector('span');
let container = wrapper.querySelector(".wrap_content");
if( unwrap_elements.includes(wrapper) ){
unwrap_elements = unwrap_elements.filter(e => e !== wrapper);
help_text.innerHTML = "Lire plus";
container.style['max-height'] = "300px";
wrapper.classList.remove("unwrap");
el.parentNode.scrollIntoView({ behavior: "smooth", block: "start" });
} else {
unwrap_elements.push(wrapper);
help_text.innerHTML = "Lire moins";
container.style['max-height'] = "20000px";
wrapper.classList.add("unwrap");
}
}
let unwrap_elements_custom = [];
function unwrap_custom(btn, options = { more: "Lire plus", less: "Lire moins" } ) {
const wrapper = btn.parentNode;
const container = wrapper.querySelector(".wrap_custom_content");
const help_text = btn.querySelector(".wrap_help_text");
console.log( wrapper );
if (!container) return;
const dataset_more = btn.dataset.textMore;
const dataset_less = btn.dataset.textLess;
const final_options = {
more: dataset_more || options.more,
less: dataset_less || options.less
};
capture_original_constraint(container);
const is_open = unwrap_elements_custom.includes(wrapper);
if (is_open) {
const collapse_height = read_collapse_height(wrapper);
if (collapse_height != null) {
apply_collapse_height(container, collapse_height);
} else {
restore_original_constraint(container);
}
unwrap_elements_custom = unwrap_elements_custom.filter(n => n !== wrapper);
wrapper.classList.remove("unwrap_custom");
btn.setAttribute("aria-expanded", "false");
if (help_text) help_text.innerHTML = final_options.more;
wrapper.scrollIntoView({ behavior: "smooth", block: "start" });
} else {
remove_constraint(container);
unwrap_elements_custom.push(wrapper);
wrapper.classList.add("unwrap_custom");
btn.setAttribute("aria-expanded", "true");
if (help_text) help_text.innerHTML = final_options.less;
}
}
function init_unwrap_auto(root_node = document, options = { more: "Lire plus", less: "Lire moins" }) {
const wrappers = root_node.querySelectorAll(".wrap_custom");
wrappers.forEach(wrapper => {
const container = wrapper.querySelector(".wrap_custom_content");
const btn = wrapper.querySelector(".wrap_custom_toggle");
const help_text = btn ? btn.querySelector(".wrap_help_text") : null;
if (!container || !btn) return;
unwrap_elements_custom = unwrap_elements_custom.filter(n => n !== wrapper);
const text_more = btn.dataset.textMore || options.more;
capture_original_constraint(container);
const collapse_height = read_collapse_height(wrapper);
if (collapse_height != null) {
apply_collapse_height(container, collapse_height);
} else {
restore_original_constraint(container);
}
const overflowing = is_overflowing(container);
if (overflowing) {
btn.style.display = "";
btn.setAttribute("aria-expanded", "false");
if (help_text) help_text.innerHTML = text_more;
wrapper.classList.remove("unwrap_custom");
} else {
remove_constraint(container);
btn.style.display = "none";
wrapper.classList.add("unwrap_custom");
if (!unwrap_elements_custom.includes(wrapper)) {
unwrap_elements_custom.push(wrapper);
}
}
one_time_resize_recheck(container, () => {
if (collapse_height != null) apply_collapse_height(container, collapse_height);
const now_overflowing = is_overflowing(container);
if (now_overflowing) {
btn.style.display = "";
btn.setAttribute("aria-expanded", "false");
if (help_text) help_text.innerHTML = text_more;
restore_collapsed_state(container, wrapper, collapse_height);
} else {
remove_constraint(container);
btn.style.display = "none";
wrapper.classList.add("unwrap_custom");
if (!unwrap_elements_custom.includes(wrapper)) {
unwrap_elements_custom.push(wrapper);
}
}
});
});
}
function read_collapse_height(wrapper) {
const raw = wrapper.getAttribute("data-collapse_height");
if (!raw) return null;
const n = parse_int_safe(raw, null);
return n != null ? n : null;
}
function parse_int_safe(value, fallback) {
const n = parseInt(value, 10);
return Number.isNaN(n) ? fallback : n;
}
function is_overflowing(el) {
return Math.ceil(el.scrollHeight) > Math.ceil(el.clientHeight);
}
function capture_original_constraint(container) {
if (container.dataset._cap_captured === "1") return;
const cs = window.getComputedStyle(container);
container.dataset._orig_max_height = cs.maxHeight;
container.dataset._orig_height = cs.height;
container.dataset._orig_overflow = cs.overflow;
container.dataset._cap_captured = "1";
}
function restore_original_constraint(container) {
const orig_max = container.dataset._orig_max_height || "none";
const orig_height = container.dataset._orig_height || "auto";
const orig_overflow = container.dataset._orig_overflow || "visible";
container.style.maxHeight = orig_max;
if (orig_height !== "auto") container.style.height = orig_height;
container.style.overflow = orig_overflow;
}
function apply_collapse_height(container, height_px) {
container.style.height = "";
container.style.maxHeight = height_px + "px";
container.style.overflow = "hidden";
}
function remove_constraint(container) {
container.style.maxHeight = "none";
container.style.height = "auto";
container.style.overflow = "visible";
}
function restore_collapsed_state(container, wrapper, collapse_height) {
if (collapse_height != null) {
apply_collapse_height(container, collapse_height);
} else {
restore_original_constraint(container);
}
wrapper.classList.remove("unwrap_custom");
unwrap_elements_custom = unwrap_elements_custom.filter(n => n !== wrapper);
}
function one_time_resize_recheck(container, callback_once) {
if (!("ResizeObserver" in window)) return;
let done = false;
const ro = new ResizeObserver(() => {
if (done) return;
done = true;
callback_once();
ro.disconnect();
});
ro.observe(container);
}
document.addEventListener("DOMContentLoaded", () => {
init_unwrap_auto(document, { more: "Lire plus", less: "Lire moins" });
});
✖
Transformez votre loyer en Patrimoine
M. & Mme Dubois étaient locataires d'un T3 en zone A à 1 000 €/mois
Avec leur revenu fiscal de référence de 35 000 € ils sont éligibles au Prêt à Taux Zéro
🏡
T3 à 310 000 € frais de notaire inclus
◎
PTZ + Prêt Aidé de 165 000 €
💸
Apport de 31 000 €
🏦
Emprunt de 125 000 € à 3.20 % sur 25 ans
Leur nouvelle mensualité s'élève à 1 150 €/mois , ils sont devenus propriétaires de leur résidence principale pour 150 € de plus par mois*
Contactez-nous & obtenez votre simulation gratuite
*Document non contractuel. Voir conditions en agence
▾
//=base64_encode('/contact')?>
Obtenir les informations résumées de cette page :
Responsable Éditoriale & Rédactrice web spécialisée en immobilier
Après 10 ans d’expérience de rédaction freelance à Rennes, j’ai rejoint Toulouse et le pôle de communication digitale de la société Immo9. 2 ans de décorticage de la toile immobilière au service des internautes, clients ou curieux, ont affiné ma maîtrise du secteur, de sa législation, de son évolution et des politiques locales d'urbanisme.
Je pilote désormais une équipe de rédacteurs qui vulgarise au quotidien : les rouages de l’investissement locatifs, de la fiscalité immobilière, des marchés locaux, des normes environnementales, mais aussi des architectures et matériaux du futur...
Dans la vie, j'aime l'histoire, les vieilles pierres, la Bretagne et accessoirement... écrire ;)
Articles écrits par Morgane
Quels travaux et réparations le locataire doit-il payer ?
La répartition des frais d'entretien constitue une source fréquente de désaccord entre bailleurs et occupants. Pourtant, la loi du 6 juillet 1989 et le décret du 26 août 1987 fixent un cadre précis : le locataire assume l'entretien courant et les menues réparations, tandis que le propriétaire prend en charge le gros œuvre et la vétusté. Ce dossier détaille, poste par poste, les interventions qui incombent légalement au locataire.
Dispositif Relance Logement : Comment investir à Nantes ?
Le dispositif relance logement permet d'économiser jusqu'à 60 000 €/an d'impôt sur 9 ans, pour l'achat d'un appartement neuf destiné à la location. Calculé sur 80% du prix d'acquisition, l'amortissement varie de 3,5% à 5,5% selon le niveau de loyer pratiqué. Le déficit foncier est imputable sur le revenu global (limite 10 700 €/an). À Nantes Métropole, un T2 à 211 500 € génère environ 1 322 € d'économie d'impôt annuelle pour un investisseur à 30% de TMI.
Dispositif Jeanbrun : les 5 changements clés pour l'investissement immobilier
Le dispositif Jeanbrun remplace le Pinel avec des règles inédites : amortissement du bien comme une entreprise, déficit imputable sur le revenu global jusqu'à 10 700 €/an et suppression du zonage géographique. Ce nouvel outil de défiscalisation pourrait venir relancer l'investissement locatif en France.
Crise du logement : ce que contient la proposition de loi CHOC examinée au Sénat
Depuis le 13 janvier, le Sénat examine la proposition de loi "CHOC" initiée par la droite sénatoriale. Face à une production de logements neufs en chute libre, le texte vise 400 000 constructions annuelles d'ici 2030. Il prévoit notamment l'assouplissement de la loi SRU et l'accroissement des prérogatives des maires dans l'attribution des logements sociaux. Des dispositions qui provoquent une levée de boucliers des associations et de l'opposition avant le vote solennel du 20 janvier.
Fixer son loyer en 2026 : le guide complet pour les propriétaires bailleurs
Entre les zones où le loyer est libre, celles où il est encadré à la relocation et celles où il est strictement plafonné par le préfet, la France de l'immobilier est morcelée. Comment fixer un loyer sans erreur en 2026 ? Décryptage des règles pour sécuriser votre investissement
Orvault 2026 : Quatre nouvelles résidences pour métamorphoser le Bourg d’ici 2030
Le centre-bourg d’Orvault entre en phase opérationnelle avec quatre îlots en renouvellement urbain, pour environ 180 logements neufs livrés entre 2026 et 2030, assortis de commerces et d’équipements. On fait le point sur ces projets.
Les prix de l'immobilier à Saint-Nazaire quartiers et communes en décembre 2025
En décembre 2025, le marché résidentiel de Saint-Nazaire poursuit sa progression, accompagné par la solidité de son bassin d’emploi et par plusieurs opérations urbaines structurantes. Les dernières données indiquent un prix médian de 3 920 €/m², en hausse de 5 % sur un an et de 46 % sur cinq ans.
Nouveau DPE 2026 : ce qui va changer au 1er janvier pour les logements chauffés à l’électricité
Au 1ᵉʳ janvier 2026, le diagnostic de performance énergétique change de base pour les logements chauffés à l’électricité. Le coefficient de conversion passe de 2,3 à 1,9 et modifie le classement de centaines de milliers de biens, sans toucher à la brique. Entre allègement annoncé pour de nombreux propriétaires-bailleurs et inquiétudes sur le rythme réel des rénovations, la réforme du DPE 2026 rebat les cartes du marché locatif et de la notion de « passoire énergétique ».
Multipropriétaires : Le sous-amendement PS qui maintient les biens locatifs dans l'impôt sur la fortune
Les logements loués pourraient rester soumis au nouvel impôt sur la fortune improductive, adopté par l’Assemblée nationale le 31 octobre 2025. Un sous-amendement du député socialiste Philippe Brun a supprimé l’exonération initialement prévue par Jean-Paul Matteï pour soutenir l’investissement locatif.
L'équipe rédactionnelle IMMO9
En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour la réalisation de statistiques de visites.
J'accepte