Skip to content
Snippets Groups Projects
Maps.vue 6.38 KiB
Newer Older
<template>
  <section id="map">
    <div
      id="title"
      class="text-container title-text"
    >
Azadpour, Elmera's avatar
Azadpour, Elmera committed
      <h3><p v-html="mapText.title"></p></h3>
Azadpour, Elmera's avatar
Azadpour, Elmera committed
      <br>
      <div class="accordion-container">
        <button class="accordion households-accordion active">Households<span class="symbol">-</span></button>
        <div class="panel" style="display: block;">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
          <p v-html="mapText.paragraph1"></p>
          <img src="@/assets/images/tot_households_2022.png" alt="Choropleth map of total households in the contiguous United States aggregated at the county level where counties with the greatest total households in dark blue include Los Angeles County, California (3,363,093), Harris County, Texas (1,692,896) and  Maricopa County, Arizona (1,665,560). Data provided by 2022 American Community Survey, U.S. Census Bureau.">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
        </div>

        <button class="accordion income-accordion">Income<span class="symbol">+</span></button>
Azadpour, Elmera's avatar
Azadpour, Elmera committed
        <div class="panel">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
          <p v-html="mapText.paragraph2"></p>
          <img src="@/assets/images/med_income_census_2022.png" alt="Choropleth map of median household income in the past 12 months (in 2022 inflation-adjusted dollars) in the contiguous United States aggregated at the county level where counties with the greatest median household income in dark blue include Santa Clara County, California (153,792), San Mateo County, California (149,907) and Marin County, California (142,019). Data provided by 2022 American Community Survey, U.S. Census Bureau.">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
        </div>

        <button class="accordion renters-accordion">Renters<span class="symbol">+</span></button>
Azadpour, Elmera's avatar
Azadpour, Elmera committed
        <div class="panel">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
          <p v-html="mapText.paragraph3"></p>
Azadpour, Elmera's avatar
Azadpour, Elmera committed
          <img src="@/assets/images/median_rent_2022.png" alt="Choropleth map of median gross rent in the contiguous United States aggregated at the county level where counties with the greatest median gross rent in dark blue include San Mateo County, California (2,805), Santa Clara County, California (2,719) and Marin County, California (2,487). Data provided by 2022 American Community Survey, U.S. Census Bureau.">
        </div>

        <button class="accordion latino-accordion">Latino<span class="symbol">+</span></button>
Azadpour, Elmera's avatar
Azadpour, Elmera committed
        <div class="panel">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
          <p v-html="mapText.paragraph4"></p>
          <img src="@/assets/images/perc_latino_census_2022.png" alt="Choropleth map of percent of Hispanic or Latino in the contiguous United States aggregated at the county level where counties with the greatest percent Hispanic or Latino in dark blue include Kenedy County, Texas (96.6%), Starr County, Texas (96.2%) and Webb County, Texas (95.4%). Data provided by 2022 American Community Survey, U.S. Census Bureau.">
Azadpour, Elmera's avatar
Azadpour, Elmera committed
        </div>

        <button class="accordion disability-accordion">Disability<span class="symbol">+</span></button>
        <div class="panel">
          <p v-html="mapText.paragraph5"></p>
          <img src="@/assets/images/perc_disable_census_2022.png" alt="Choropleth map of percent with a disability of total civilian noninstitutionalized population in the contiguous United States aggregated at the county level where counties with the greatest percent disable in dark blue include Catron County, New Mexico (41.2%), Mora County, New Mexico (34%) and Kinney County, Texas (34%). Data provided by 2022 American Community Survey, U.S. Census Bureau.">
        <button class="accordion health-accordion">Health case study<span class="symbol">+</span></button>
        <div class="panel">
          <p v-html="mapText.paragraph6"></p>
        </div>

        <button class="accordion livingconditions-accordion">Living conditions case study<span class="symbol">+</span></button>
        <div class="panel">
          <p v-html="mapText.paragraph6"></p>
        </div>

        <button class="accordion exposure-accordion">Exposure to stressor case study<span class="symbol">+</span></button>
        <div class="panel">
          <p v-html="mapText.paragraph6"></p>
        </div>

Azadpour, Elmera's avatar
Azadpour, Elmera committed
      </div>
      <br>
      <p v-html="mapText.paragraph7"></p>    
Azadpour, Elmera's avatar
Azadpour, Elmera committed
    </div>
  </section>
</template>

Azadpour, Elmera's avatar
Azadpour, Elmera committed
<script setup>
import { onMounted } from 'vue';
Azadpour, Elmera's avatar
Azadpour, Elmera committed
import { isMobile } from 'mobile-device-detect';
Azadpour, Elmera's avatar
Azadpour, Elmera committed
import text from './../assets/text/text.js';
Azadpour, Elmera's avatar
Azadpour, Elmera committed
const mobileView = isMobile;
Azadpour, Elmera's avatar
Azadpour, Elmera committed
const mapText = text.components.mapText;
Azadpour, Elmera's avatar
Azadpour, Elmera committed
onMounted(() => {
  const acc = document.getElementsByClassName("accordion");
  for (let i = 0; i < acc.length; i++) {
    acc[i].addEventListener("click", function () {
      this.classList.toggle("active");
      const panel = this.nextElementSibling;
      const symbol = this.querySelector('.symbol');
      if (panel.style.display === "block") {
        panel.style.display = "none";
        symbol.textContent = "+";
      } else {
        panel.style.display = "block";
        symbol.textContent = "-";
      }
    });
  }
});
Azadpour, Elmera's avatar
Azadpour, Elmera committed
<style scoped>
.accordion {
  background-color: #eee;
  color: #fff;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.4s;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 2.5rem;
  font-family: 'Source Sans Pro', sans-serif;
Azadpour, Elmera's avatar
Azadpour, Elmera committed
  font-weight: 600;
  position: relative;
  border: 2px solid transparent;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 15px
.accordion.households-accordion {
  background-color: #092836;
.accordion.income-accordion {
  background-color: #2A468F;
}

.accordion.renters-accordion {
  background-color: #2A468F;
}

.accordion.latino-accordion {
  background-color: #092836;
}

.accordion.disability-accordion {
  background-color: #092836;
}

.accordion.health-accordion {
  background-color: #EE5775;
}
.accordion.livingconditions-accordion {
  background-color: #7A5195;
}

.accordion.exposure-accordion {
  background-color: #FFA601;
}

.accordion::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border: 2px solid transparent;
  z-index: -1;
  transition: border-color 0.3s;
}

.accordion:hover::before, .accordion.active::before {
  border-color: #f39c12;
Azadpour, Elmera's avatar
Azadpour, Elmera committed
.active, .accordion:hover {
Azadpour, Elmera's avatar
Azadpour, Elmera committed
  background-color: black; 
Azadpour, Elmera's avatar
Azadpour, Elmera committed
.panel {
  display: none;
  overflow: hidden;
  border: 3px solid #F0F0F0; 
  margin-bottom: 15px;
  margin-top: -15px;
  border-top-width: 0;
  border-radius: 0 0 10px 10px;
.panel p {
  margin: 20px;
}

Azadpour, Elmera's avatar
Azadpour, Elmera committed
.symbol {
  font-size: 32px;
Azadpour, Elmera's avatar
Azadpour, Elmera committed
  font-weight: bold;
}