Cari Tipe Belajar dan Fitur Ruangguru yang Cocok Buat Kamu!
Isi profil kamu untuk mulai quiznya!
Loading form...
Personality Quiz
1
dari
2
Pilih
spelling
yang tepat!
Eits, jangan lupa buat cek promo menariknya!
Eits, jangan lupa buat cek promo menariknya!
Cek Promo
Screenshot & bagikan di Instagram Story & tag
@ruangguru
untuk menangkan
cashback e-wallet total 1 JUTA RUPIAH!*
Bagikan ke
<!doctype html>
<html class="no-js" lang="id">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="author" content="PT Ruang Raya Indonesia" />
<meta name="description" content="" />
<meta name="generator" content="HubSpot" />
<title>Personality Quiz Ruangguru</title>
<link rel="shortcut icon" href="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/favicon60x60-3.png" />
<meta property="og:description" content="" />
<meta property="og:title" content="Personality Quiz Ruangguru" />
<meta name="twitter:description" content="" />
<meta name="twitter:title" content="Personality Quiz Ruangguru" />
<style>
a.cta_button {
-moz-box-sizing: content-box !important;
-webkit-box-sizing: content-box !important;
box-sizing: content-box !important;
vertical-align: middle;
}
.hs-breadcrumb-menu {
list-style-type: none;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
.hs-breadcrumb-menu-item {
float: left;
padding: 10px 0px 10px 10px;
}
.hs-breadcrumb-menu-divider:before {
content: '›';
padding-left: 10px;
}
.hs-featured-image-link {
border: 0;
}
.hs-featured-image {
float: right;
margin: 0 0 20px 20px;
max-width: 50%;
}
@media (max-width: 568px) {
.hs-featured-image {
float: none;
margin: 0;
width: 100%;
max-width: 100%;
}
}
.hs-screen-reader-text {
clip: rect(1px, 1px, 1px, 1px);
height: 1px;
overflow: hidden;
position: absolute !important;
width: 1px;
}
</style>
<link
rel="stylesheet"
href="https://cdn-web-2.ruangguru.com/landing-page-web/public/staticpages/www.ruangguru.com/hs-fs/hub/2828691/hub_generated/module_assets/63103980696/1645156553321/module_63103980696_Module_Section_Quiz_-_Ruangguru_2022.min.css"
/>
<!-- Added by GoogleAnalytics integration -->
<script>
var _hsp = (window._hsp = window._hsp || []);
_hsp.push([
'addPrivacyConsentListener',
function (consent) {
if (consent.allowed || (consent.categories && consent.categories.analytics)) {
(function (i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
(i[r] =
i[r] ||
function () {
(i[r].q = i[r].q || []).push(arguments);
}),
(i[r].l = 1 * new Date());
(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m);
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-49650255-1', 'auto');
ga('send', 'pageview');
}
},
]);
</script>
<!-- /Added by GoogleAnalytics integration -->
<link rel="canonical" href="https://www.ruangguru.com/webview/personality-quiz/fitur" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<script>
(function (h, e, a, t, m, p) {
m = e.createElement(a);
m.async = !0;
m.src = t;
p = e.getElementsByTagName(a)[0];
p.parentNode.insertBefore(m, p);
})(window, document, 'script', 'https://u.heatmap.it/log.js');
</script>
<meta name="google-site-verification" content="VJAn1g6wmtTZPpTXh-B4xoSFEkUi5jcV74xQSr6jnOM" />
<script>
document.querySelector('meta[name="author"]').setAttribute('content', 'Ruangguru Tech Team');
</script>
<meta name="publisher" content="PT Ruang Raya Indonesia" />
<!-- Global site tag (gtag.js) - Google Analytics -->
<!--
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-49650255-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-49650255-1');
</script>
-->
<!-- Google Tag Manager -->
<script>
(function (w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' });
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-PVNLZFT');
</script>
<!-- End Google Tag Manager -->
<meta property="og:url" content="https://www.ruangguru.com/webview/personality-quiz/fitur" />
<meta name="twitter:card" content="summary" />
<meta http-equiv="content-language" content="id" />
<link rel="stylesheet" href="https://cdn-web-2.ruangguru.com/landing-page-web/public/assets/common/layout.min.css" />
<link
rel="stylesheet"
href="https://cdn-web-2.ruangguru.com/landing-page-web/public/staticpages/www.ruangguru.com/hs-fs/hub/2828691/hub_generated/template_assets/36645224536/1657858188870/A_Ruangguru_Projects/0_Back_Up_-_SOP_Landing_Page/SOP_Style_Ruangguru.min.css"
/>
<meta name="robots" content="noindex, nofollow" />
<script type="module" crossorigin src="https://cdn-web-2.ruangguru.com/landing-page-web/public/staticpages/www.ruangguru.com/webview/personality-quiz/fitur/assets/index-Dqv5PPZA.js"></script>
</head>
<body class="hs-content-id-64389781771 hs-landing-page hs-page" style="">
<div class="header-container-wrapper">
<div class="header-container container-fluid"></div>
<!--end header -->
</div>
<!--end header wrapper -->
<div class="body-container-wrapper">
<div class="body-container container-fluid">
<div class="row-fluid-wrapper row-depth-1 row-number-1">
<div class="row-fluid">
<div class="span12 widget-span widget-type-custom_widget" style="" data-widget-type="custom_widget" data-x="0" data-w="12">
<div
id="hs_cos_wrapper_module_164128051900254"
class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_module"
style=""
data-hs-cos-general-type="widget"
data-hs-cos-type="module"
>
<link href="https://fonts.googleapis.com/css2?family=Poppins&display=swap" rel="stylesheet" />
<style></style>
<section id="section-quiz-area" class="">
<div class="row">
<div class="col-12 px-0">
<!--<div class="page-center">-->
<div class="card card-c-a bg-transparent border-0">
<div class="card-body p-0">
<div class="page-center">
<div id="welcomePage" class="card card-c-b bg-transparent border-0 py-4">
<div class="card-header bg-transparent border-0 text-center">
<img
class="img-logo h-custom-auto d-none"
loading="lazy"
width="58"
height="32"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=58&height=32&name=logo_rg_blue.png"
alt="ruangguru"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=29&height=16&name=logo_rg_blue.png 29w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=58&height=32&name=logo_rg_blue.png 58w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=87&height=48&name=logo_rg_blue.png 87w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=116&height=64&name=logo_rg_blue.png 116w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=145&height=80&name=logo_rg_blue.png 145w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=174&height=96&name=logo_rg_blue.png 174w"
sizes="(max-width: 58px) 100vw, 58px"
/>
<h2 class="card-title m-0">Personality Quiz</h2>
</div>
<div class="card-body p-0">
<div class="card card-c-c py-1 rounded-c bg-transparent border-0">
<div class="card-header bg-transparent border-0 text-center py-0">
<h3 class="card-title mt-0">Cari Tipe Belajar dan Fitur Ruangguru yang Cocok Buat Kamu!</h3>
</div>
<div class="card-body bg-white p-1 rounded-c d-flex">
<img
loading="lazy"
class="rounded-c w-100 h-auto"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=320&height=180&name=img-personality-quiz_2.png"
width="320"
height="180"
alt="Image Personality Quiz"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=160&height=90&name=img-personality-quiz_2.png 160w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=320&height=180&name=img-personality-quiz_2.png 320w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=480&height=270&name=img-personality-quiz_2.png 480w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=640&height=360&name=img-personality-quiz_2.png 640w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=800&height=450&name=img-personality-quiz_2.png 800w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/img-personality-quiz_2.png?width=960&height=540&name=img-personality-quiz_2.png 960w"
sizes="(max-width: 320px) 100vw, 320px"
/>
</div>
</div>
<div class="card card-c-c py-1 rounded-c bg-transparent border-0">
<div class="card-header bg-transparent border-0">
<h3 class="card-title">Isi profil kamu untuk mulai quiznya!</h3>
</div>
<div class="card-body bg-white p-1 rounded-c mh-c shadow-c">
<div class="p-2" id="targetForm">Loading form...</div>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 text-center">
<button type="button" id="btnMulai" class="btn btn-c-mulai" disabled>Mulai!</button>
</div>
</div>
</div>
<div class="page-center">
<div id="section-question" class="card card-c-c bg-transparent border-0 d-none py-4">
<div class="card-header bg-transparent border-0 text-center">
<img
class="img-logo h-custom-auto d-none"
loading="lazy"
width="58"
height="32"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=58&height=32&name=logo_rg_blue.png"
alt="ruangguru"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=29&height=16&name=logo_rg_blue.png 29w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=58&height=32&name=logo_rg_blue.png 58w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=87&height=48&name=logo_rg_blue.png 87w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=116&height=64&name=logo_rg_blue.png 116w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=145&height=80&name=logo_rg_blue.png 145w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/logo_rg_blue.png?width=174&height=96&name=logo_rg_blue.png 174w"
sizes="(max-width: 58px) 100vw, 58px"
/>
<h2 class="card-title m-0">Personality Quiz</h2>
</div>
<div class="card-body p-0">
<form id="formQuiz">
<div class=""></div>
<div class="div-c-progress">
<div class="row align-items-center h-100">
<div class="col-4">
<span id="number">1</span>
dari
<span id="totalQ">2</span>
</div>
<div class="col-7">
<div class="progress">
<div id="progress-bar-a" class="progress-bar" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</div>
</div>
</div>
<div class="div-c-q bg-white rounded-c d-flex align-items-center mt-3 justify-content-center">
<p class="p-2" id="question">
Pilih
<i>spelling</i>
yang tepat!
</p>
</div>
<div class="div-c-ans mt-3">
<div class="row row-cols-2 g-0">
<div class="col my-2" id="q1-a">
<div class="card card-c-ans h-100 mx-2">
<div class="card-body d-flex justify-content-center">
<p class="m-0">
<input type="radio" id="input1-a" class="question1 cursor-pointer d-none" name="question1" value="0" />
<label for="input1-a" id="label1-a" class="label-q cursor-pointer d-flex h-100 justify-content-center align-items-center px-2"></label>
</p>
</div>
</div>
</div>
<div class="col my-2" id="q1-b">
<div class="card card-c-ans h-100 mx-2">
<div class="card-body d-flex justify-content-center">
<p class="m-0">
<input type="radio" id="input1-b" class="question1 cursor-pointer d-none" name="question1" value="1" />
<label for="input1-b" id="label1-b" class="label-q cursor-pointer d-flex h-100 justify-content-center align-items-center px-2"></label>
</p>
</div>
</div>
</div>
<div class="col my-2" id="q1-c">
<div class="card card-c-ans h-100 mx-2">
<div class="card-body d-flex justify-content-center">
<p class="m-0">
<input type="radio" id="input1-c" class="question1 cursor-pointer d-none" name="question1" value="2" />
<label for="input1-c" id="label1-c" class="label-q cursor-pointer d-flex h-100 justify-content-center align-items-center px-2"></label>
</p>
</div>
</div>
</div>
<div class="col my-2" id="q1-d">
<div class="card card-c-ans h-100 mx-2">
<div class="card-body d-flex justify-content-center">
<p class="m-0">
<input type="radio" id="input1-d" class="question1 cursor-pointer d-none" name="question1" value="3" />
<label for="input1-d" id="label1-d" class="label-q cursor-pointer d-flex h-100 justify-content-center align-items-center px-2"></label>
</p>
</div>
</div>
</div>
</div>
</div>
<div id="btnCQuiz" class="mt-3">
<div class="row g-2">
<div class="col text-center">
<button type="button" id="btnPrev" class="w-100">Sebelumnya</button>
</div>
<div class="col text-center">
<button type="button" id="btnNext" class="w-100">Selanjutnya</button>
</div>
</div>
</div>
<div class="submit-section mt-2 mb-2 d-none">
<button id="target" type="submit" class="btn-submit" disabled>LIHAT HASILNYA!</button>
</div>
<div>
<h1 id="result" class="center"></h1>
</div>
</form>
</div>
</div>
</div>
<div id="result1" class="card card-c-d bg-transparent border-0 d-none">
<div class="card-body p-0 bg-c-result">
<a href="#" target="_self" rel="">
<img id="disc-img" loading="lazy" class="w-100 h-auto" src="" alt="image" />
</a>
<div class="page-center mt-c-result pb-4">
<div class="row row-c-promo px-3">
<div class="col-7">
<p class="text-c-promo">Eits, jangan lupa buat cek promo menariknya!</p>
</div>
<div class="col-5 d-flex align-items-center justify-content-evenly col-c-share">
<a href="ruangguru://payment?type=rubel_new" target="_blank" rel="" class="btn btn-c-cekpromo">Cek Promo</a>
</div>
</div>
<div class="card card-c-e d-none">
<div class="card-body p-2">
<div id="head-content"></div>
<div class="row px-2 row-c-e mb-1">
<div class="col-7">
<p>Eits, jangan lupa buat cek promo menariknya!</p>
</div>
<div class="col-5 d-flex align-items-center">
<a class="btn btn-c-cekpromo" href="https://www.ruangguru.com/promo" target="_self" rel="">Cek Promo</a>
</div>
</div>
</div>
</div>
<div class="row text-c-a">
<div class="col-12 mb-c-tca tca-1">
<p class="text-left m-0">
Screenshot & bagikan di Instagram Story & tag
<span>@ruangguru</span>
untuk menangkan
<span>cashback e-wallet total 1 JUTA RUPIAH!*</span>
</p>
</div>
<div class="col text-center align-self-center mb-c-tca d-none tca-2">
<p class="text-center m-0">
<a target="_blank" rel="" class="btn download-button-c">
<img
loading="lazy"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/ic_download.svg"
class="vertical-align-middle"
alt="Download"
/>
</a>
</p>
</div>
</div>
<div class="row row-c-share px-3">
<div class="col-5">
<p>Bagikan ke</p>
</div>
<div class="col-7 d-flex align-items-center justify-content-end col-c-share">
<a href="#" target="_blank" rel="" class="telegram-share-button-c" title="Telegram">
<img
loading="lazy"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=32&height=32&name=telegram.png"
width="32"
height="32"
class="v-align-middle"
alt="Telegram"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=16&height=16&name=telegram.png 16w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=32&height=32&name=telegram.png 32w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=48&height=48&name=telegram.png 48w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=64&height=64&name=telegram.png 64w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=80&height=80&name=telegram.png 80w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/telegram.png?width=96&height=96&name=telegram.png 96w"
sizes="(max-width: 32px) 100vw, 32px"
/>
</a>
<a href="#" target="_blank" rel="" class="line-share-button-c d-none" title="Line">
<img
loading="lazy"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=32&height=32&name=line.png"
width="32"
height="32"
class="v-align-middle"
alt="Line"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=16&height=16&name=line.png 16w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=32&height=32&name=line.png 32w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=48&height=48&name=line.png 48w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=64&height=64&name=line.png 64w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=80&height=80&name=line.png 80w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/line.png?width=96&height=96&name=line.png 96w"
sizes="(max-width: 32px) 100vw, 32px"
/>
</a>
<a href="#" target="_blank" rel="" class="whatsapp-share-button-c" title="WhatsApp">
<img
loading="lazy"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=32&height=32&name=WhatsApp.png"
width="32"
height="32"
class="v-align-middle"
alt="WhatsApp"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=16&height=16&name=WhatsApp.png 16w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=32&height=32&name=WhatsApp.png 32w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=48&height=48&name=WhatsApp.png 48w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=64&height=64&name=WhatsApp.png 64w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=80&height=80&name=WhatsApp.png 80w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/WhatsApp.png?width=96&height=96&name=WhatsApp.png 96w"
sizes="(max-width: 32px) 100vw, 32px"
/>
</a>
<a href="#" target="_blank" rel="" class="twitter-share-button-c" title="Twitter">
<img
loading="lazy"
src="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=32&height=32&name=Twitter.png"
width="32"
height="32"
class="v-align-middle"
alt="Twitter"
srcset="https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=16&height=16&name=Twitter.png 16w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=32&height=32&name=Twitter.png 32w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=48&height=48&name=Twitter.png 48w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=64&height=64&name=Twitter.png 64w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=80&height=80&name=Twitter.png 80w, https://cdn-web-2.ruangguru.com/landing-pages/assets/hs/Personality%20Quiz%20Ruangguru%202022/Twitter.png?width=96&height=96&name=Twitter.png 96w"
sizes="(max-width: 32px) 100vw, 32px"
/>
</a>
</div>
</div>
<div class="d-none">
<span id="nick"></span>
<span id="content"></span>
<a id="copyClipboard" class="copylink btn"></a>
<p id="copycopy"></p>
<textarea id="textCopyClipborad" name="textCopyClipboard" rows="5" cols="10"></textarea>
<button id="ikutiLagi" type="button">Ikuti Lagi!</button>
<div id="btn-ikut-placement-test"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!--</div>-->
</div>
</div>
</section>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<!--[if lte IE 8]>
<script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/v2-legacy.js"></script>
<![endif]-->
<script src="//js.hsforms.net/forms/v2.js"></script>
<!--for line share-->
<script src="https://static.line-scdn.net/liff/edge/2/sdk.js"></script>
<script>
$j3C = jQuery.noConflict();
</script>
</div>
</div>
<!--end widget-span -->
</div>
<!--end row-->
</div>
<!--end row-wrapper -->
</div>
<!--end body -->
</div>
<!--end body wrapper -->
<script src="https://cdn-web-2.ruangguru.com/landing-page-web/public/staticpages/www.ruangguru.com/hs-fs/hub/2828691/hub_generated/module_assets/63103980696/1645156552858/module_63103980696_Module_Section_Quiz_-_Ruangguru_2022.min.js"></script>
<!-- Start of HubSpot Analytics Code -->
<script type="text/javascript">
var _hsq = _hsq || [];
_hsq.push(['setContentType', 'landing-page']);
_hsq.push(['setCanonicalUrl', 'https:\/\/www.ruangguru.com\/webview\/personality-quiz\/fitur']);
_hsq.push(['setPageId', '64389781771']);
_hsq.push([
'setContentMetadata',
{
contentPageId: 64389781771,
legacyPageId: '64389781771',
contentFolderId: null,
contentGroupId: null,
abTestId: null,
languageVariantId: 64389781771,
languageCode: 'id',
},
]);
</script>
<script type="text/javascript">
var hsVars = {
render_id: '1e76a5b9-b090-4e1b-a736-615161d3c852',
ticks: 1684631549810,
page_id: 64389781771,
content_group_id: 0,
portal_id: 2828691,
app_hs_base_url: 'https://app.hubspot.com',
cp_hs_base_url: 'https://cp.hubspot.com',
language: 'id',
analytics_page_type: 'landing-page',
analytics_page_id: '64389781771',
category_id: 1,
folder_id: 0,
is_hubspot_user: false,
};
</script>
<script src="https://unpkg.com/@dotlottie/player-component@latest/dist/dotlottie-player.mjs" type="module"></script>
<!-- Load CSS for all versions -->
<script>
// CSS loading function available for all versions
function loadFloatingCSS() {
// Check if CSS is already loaded
if (document.getElementById('fb-component-css')) {
return;
}
// Create and append CSS style block to head
const style = document.createElement('style');
style.id = 'fb-component-css';
style.textContent = `
.bantuan-container {
position: relative;
}
.bantuan-element {
position: fixed;
z-index: 999;
display: flex;
align-items: flex-end;
justify-content: flex-end;
cursor: pointer;
transition: all 0.6s ease;
}
.bantuan-top {
bottom: 11rem;
right: 2rem;
}
.bantuan-bottom {
bottom: 2rem;
right: 2rem;
}
.bantuan-top-2 {
bottom: 15rem;
right: 2rem;
}
.bantuan-top-3 {
bottom: 19rem;
right: 2rem;
}
.bantuan-bottom-2 {
bottom: 5rem;
right: 2rem;
}
.bantuan-bottom-3 {
bottom: 8rem;
right: 2rem;
}
@media (min-width: 768px) {
.bantuan-element img {
width: auto;
transition: all 0.4s ease;
}
.bantuan-top img {
width: 140px;
}
.bantuan-bottom img {
width: 140px;
}
.bantuan-top-2 img,
.bantuan-top-3 img {
width: 140px;
}
.bantuan-bottom-2 img,
.bantuan-bottom-3 img {
width: 140px;
}
.bantuan-element.clicked {
bottom: 9rem;
right: 2.5rem;
}
.bantuan-element.clicked img {
width: auto;
height: 64px;
}
}
@media (max-width: 767px) {
.bantuan-top {
bottom: 8rem;
right: 1rem;
align-items: center;
}
.bantuan-bottom {
bottom: 2rem;
right: 1.25rem;
align-items: center;
}
.bantuan-top-2 {
bottom: 12rem;
right: 1rem;
align-items: center;
}
.bantuan-top-3 {
bottom: 16rem;
right: 1rem;
align-items: center;
}
.bantuan-bottom-2 {
bottom: 5rem;
right: 1.25rem;
align-items: center;
}
.bantuan-bottom-3 {
bottom: 8rem;
right: 1.25rem;
align-items: center;
}
.bantuan-element img {
width: auto;
}
.bantuan-top img,
.bantuan-top-2 img,
.bantuan-top-3 img {
width: 96px;
}
.bantuan-bottom img,
.bantuan-bottom-2 img,
.bantuan-bottom-3 img {
width: 96px;
}
}
.bantuan-element:hover {
transform: scale(1.05);
}
.bantuan-element img {
max-width: 100%;
height: auto;
}
`;
document.head.appendChild(style);
}
// Load CSS immediately
loadFloatingCSS();
</script>
<div id="bantuan-divs-container" style="position: relative" data-product="ruangguru" data-table=""></div>
<script>
class FloatingDivsComponent {
constructor(product = 'ruangguru', table = 'rg_promo_banner') {
this.container = document.getElementById('bantuan-divs-container');
this.floatingElements = [];
this.product = product;
this.table = table;
// Configuration
this.config = {
baseApiUrl: 'https://gw.ruangguru.com/api/v3/rdb/p_ddgy8hjx5dxsqx/rg_banner/views/',
apiKey: 'vLyK3dJrDBRmOwueX2OJXibMkgsUbBk0WS4ua2p1',
maxElements: 2,
zIndexBase: 100,
};
// Build dynamic API URL based on table parameter
this.config.apiUrl = this.buildApiUrl();
this.init();
}
buildApiUrl() {
const baseUrl = this.config.baseApiUrl;
const tableName = this.table || 'rg_promo_banner';
const queryParams =
'offset=0&limit=99999&sort=rankPosition&where=(type,eq,floating)~and(showIn,anyof,landingPage)~and(hide,is,false)~and(product,eq,' +
this.product +
')&nested%5Bcta%5D%5Bfields%5D=Id,name,ctaId,imageUrl,ctaLink,targetUrl';
return `${baseUrl}${tableName}?${queryParams}`;
}
async init() {
try {
await this.fetchFloatingElements();
this.renderFloatingElements();
} catch (error) {
console.error('Failed to initialize floating divs component:', error);
}
}
async fetchFloatingElements() {
try {
const options = {
method: 'GET',
headers: {
'xc-token': this.config.apiKey || 'vLyK3dJrDBRmOwueX2OJXibMkgsUbBk0WS4ua2p1',
},
};
const urlNoco = this.config.apiUrl;
const response = await fetch(urlNoco, options);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
this.floatingElements = this.processApiResponse(data);
} catch (error) {
console.error('Error fetching floating elements:', error);
throw error;
}
}
processApiResponse(data) {
if (!data || !data.list || !Array.isArray(data.list)) {
return [];
}
// Ensure we only get maximum 2 elements
const limitedElements = data.list.slice(0, this.config.maxElements);
return limitedElements;
}
renderFloatingElements() {
if (!this.container || this.floatingElements.length === 0) {
return;
}
// Additional safeguard: ensure we never render more than maxElements
const elementsToRender = this.floatingElements.slice(0, this.config.maxElements);
// Clean up existing elements and their event listeners
this.cleanupExistingElements();
// Clear existing content
this.container.innerHTML = '';
elementsToRender.forEach((element, index) => {
const floatingDiv = this.createFloatingDiv(element, index);
this.container.appendChild(floatingDiv);
});
}
cleanupExistingElements() {
// Clear existing elements (no need for event listener cleanup with CSS approach)
const existingElements = this.container.querySelectorAll('[data-floating-element]');
existingElements.forEach(element => {
element.remove();
});
}
createFloatingDiv(element, index) {
const div = document.createElement('div');
const cta = element.cta[0]; // Use the first CTA
// Add data attribute for cleanup tracking
div.setAttribute('data-floating-element', 'true');
// Apply CSS classes based on rankPosition
const positionClass = this.getPositionClass(element.rankPosition, index);
div.className = `bantuan-element ${positionClass}`;
div.style.zIndex = this.config.zIndexBase + index;
// Create the link and image
const link = document.createElement('a');
link.href = 'https://cta.ruangguru.com/' + cta.ctaId || '#';
link.target = '_blank';
// Add tracking attributes
link.setAttribute('data-tracking-event-type', 'landing_page__core__item_click');
link.setAttribute(
'data-tracking-context',
JSON.stringify({
product_name: this.product,
cta_action: 'redirection',
cta_action_detail: link.href,
item_type: 'floating',
item_name: element.name || 'Floating element',
item_category: 'payment',
item_position: index,
item_serial: null,
section_type: 'floating_item',
section_position: 'body',
section_name: 'floating_item',
})
);
const img = document.createElement('img');
img.src = element.imageUrl + '?h=200&convert=webp';
img.alt = element.name || 'Floating element';
img.loading = 'lazy';
// Add click tracking
link.addEventListener('click', () => {
this.trackClick(element, cta);
});
link.appendChild(img);
div.appendChild(link);
return div;
}
getPositionClass(rankPosition, index) {
// Define positioning classes based on rankPosition
if (rankPosition === 1) {
return 'bantuan-top'; // Top position
} else if (rankPosition === 2) {
return 'bantuan-bottom'; // Bottom position
} else {
// For additional elements, distribute them evenly
return `bantuan-${index % 2 === 0 ? 'top' : 'bottom'}-${Math.floor(index / 2) + 1}`;
}
}
trackClick(element, cta) {
// Implement click tracking logic here
console.log('Floating element clicked:', {
elementId: element.Id,
elementName: cta.name,
ctaId: cta.ctaId,
targetUrl: cta.targetUrl,
});
}
// Public method to manually refresh
async refresh() {
try {
await this.fetchFloatingElements();
this.renderFloatingElements();
} catch (error) {
console.error('Failed to refresh floating elements:', error);
throw error;
}
}
// Public method to get current floating elements
getFloatingElements() {
return [...this.floatingElements];
}
}
// Initialize the component when DOM is ready
document.addEventListener('DOMContentLoaded', () => {
// Get product and table parameters from data attributes
const container = document.getElementById('bantuan-divs-container');
const product = container.getAttribute('data-product') || 'ruangguru';
const table = container.getAttribute('data-table') || 'rg_promo_banner';
new FloatingDivsComponent(product, table);
});
// Export for use in other modules if needed
if (typeof module !== 'undefined' && module.exports) {
module.exports = FloatingDivsComponent;
}
</script>
<!-- Tracker -->
<script src="https://unpkg.com/analytics@0.8.1/dist/analytics.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/analytics-plugin-trackable/dist/analytics-plugin-trackable.min.js"></script>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-N8DPXH6" height="0" width="0" style="display: none; visibility: hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<script type="text/javascript" defer>
/* Initialize analytics */
var Analytics = _analytics.init({
app: 'brainAcademyLandingPage',
debug: false,
plugins: [analyticsTrackable()],
});
Analytics.ready(function () {
Analytics.page();
});
</script>
<!-- Generated by the HubSpot Template Builder - template version 1.03 -->
</body>
</html>