- Scan-ID:
- a7a849c9-120a-434b-b83d-69893efbddf6Beendet
- Eingereichte URL:
- https://gamekillerapp.com/games/top-girl/download
- Bericht beendet:
Links · 4 gefunden
Die von der Seite ausgehenden identifizierten Links
Link | Text |
---|---|
https://discord.gg/YeubKsanqU | |
https://t.me/gamekiller_app | |
https://www.youtube.com/channel/UCe4BuM1TRWq1Qq3lOKNQwYg | |
https://twitter.com/Gamekiller_Glob |
JavaScript-Variablen · 45 gefunden
Globale JavaScript-Variablen, die in das Window Object einer Seite geladen werden, sind Variablen, die außerhalb von Funktionen deklariert werden und von jeder Stelle des Codes innerhalb des aktuellen Bereichs zugänglich sind
Name | Typ |
---|---|
0 | object |
1 | object |
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
pageDetailData | object |
$ | function |
jQuery | function |
setBanner | function |
getCountryCode | function |
Konsolenprotokoll-Meldungen · 1 gefunden
In der Web-Konsole protokollierte Meldungen
Typ | Kategorie | Protokoll |
---|---|---|
log | other |
|
HTML
Der HTML-Rohtext der Seite
<!DOCTYPE html><html lang="en"><head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Download Top Girl v1.0.61 MOD APK for free on Android</title>
<meta name="description" content="Top Girl v1.0.61 MOD APK download for free on Android. 100% safe and works">
<meta name="keywords" content="Top Girl 1.0.61 mod apk download、Top Girl Speed Hack,Top Girl No Ads、com.a3.topgirl.gplay">
<meta property="og:title" content="Download Top Girl v1.0.61 MOD APK for free on Android">
<meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1">
<link rel="shortcut icon" href="https://images.gamekillerapp.com/common/h5/gamekiller.png">
<link class="set-icon" rel="apple-touch-icon" sizes="120x120" href="https://images.gamekillerapp.com/common/h5/gamekiller.png">
<link rel="canonical" href="https://gamekillerapp.com/games/top-girl/download">
<meta name="ahrefs-site-verification" content="55ce9e52092b18128fef10a379ed59c471720e3abbc6ef301cdc055d6a3085e7">
<meta name="monetag" content="85d89eb7643955cfbed337632e177ceb">
<link rel="stylesheet" href="/stylesheets/global/iconfont.css">
<link rel="stylesheet" href="/libs/bootstrap-5.1.3/css/bootstrap.min.css">
<link rel="stylesheet" href="/stylesheets/global/global-gamekillerapp.css">
<!-- adv -->
<link rel="stylesheet" href="/stylesheets/games/detail-gamekillerapp.css">
<link rel="stylesheet" href="https://images.gamekillerapp.com/common/h5/libs/smartphoto/smartphoto.min.css">
<link rel="stylesheet" href="/stylesheets/games/download-gamekillerapp.css">
<link rel="stylesheet" href="https://images.gamekillerapp.com/common/h5/libs/layer/theme/default/layer.css?v=3.1.1" id="layuicss-layer"><script src="https://static.addtoany.com/menu/modules/core.junnp81e.js" type="module"></script></head>
<body>
<header id="header">
<nav>
<div class="pc-nav fixed-top bg-white d-none d-lg-block">
<div class="container px-0 d-flex align-items-center">
<div style="height: 51px;width: 250px;margin-right: 16px;">
<a href="/">
<img style="height: 51px;width: 250px;margin-right: 16px;" src="https://images.gamekillerapp.com/common/h5/images/gamekillerapp/navbar/logo.png" alt="LOGO">
</a>
</div>
<div class="flex-fill d-flex nav-list">
<div class="flex-fill">
<a class="mx-auto nav-item d-flex align-items-center justify-content-center " href="/">
<div class="icon-image icon-home d-flex align-items-center">
Home
</div>
</a>
</div>
<div class="flex-fill">
<a class="mx-auto nav-item d-flex align-items-center justify-content-center active" href="/games/all/popular/page/1">
<div class="icon-image icon-games d-flex align-items-center">
Games
</div>
</a>
</div>
<div class="flex-fill">
<a class="mx-auto nav-item d-flex align-items-center justify-content-center " href="/apps">
<div class="icon-image icon-apps d-flex align-items-center">
Apps
</div>
</a>
</div>
<div class="flex-fill">
<a class="mx-auto nav-item d-flex align-items-center justify-content-center " href="/FAQ">
<div class="icon-image icon-faq d-flex align-items-center">
FAQ
</div>
</a>
</div>
</div>
<div class="search icon-image" data-bs-toggle="modal" data-bs-target="#searchModal"></div>
<div class="language d-flex align-items-center">
<div class="select icon-image text-end" id="dropdownMenuPcLanguage" data-bs-toggle="dropdown" aria-label="language">
English
</div>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuPcLanguage">
<li><a class="dropdown-item" href="javascript:languageChange('/');">English</a></li>
<li><a class="dropdown-item" href="javascript:languageChange('/zh-HK');">繁體中文</a></li>
</ul>
</div>
</div>
</div>
<div class="pc-nav-placeholder d-none d-lg-block"></div>
<div class="m-nav bg-white d-block d-lg-none">
<div class="container px-0 d-flex align-items-center nav-box">
<div class="menu icon-image" data-bs-toggle="offcanvas" href="#navBarModal" role="button" aria-label="navBarModal"></div>
<div class="flex-fill logo">
<a href="/" class="d-flex justify-content-center">
<img src="https://images.gamekillerapp.com/common/h5/images/gamekillerapp/navbar/logo.png" style="width: 205px;height: 42px;" alt="LOGO">
</a>
</div>
<div class="search icon-image" data-bs-toggle="modal" data-bs-target="#searchModal">
</div>
</div>
<div class="container px-0 tabs">
<div class="row gx-0">
<div class="col">
<a href="/" class="d-flex align-items-center justify-content-center ">Home</a>
</div>
<div class="col">
<a href="/genre" class="d-flex align-items-center justify-content-center ">Genre</a>
</div>
<div class="col">
<a href="/games/all/popular/page/1" class="d-flex align-items-center justify-content-center active">Games</a>
</div>
<div class="col">
<a href="/apps" class="d-flex align-items-center justify-content-center ">Apps</a>
</div>
<div class="col">
<a href="/FAQ" class="d-flex align-items-center justify-content-center ">FAQ</a>
</div>
</div>
</div>
</div>
<!-- <div class="m-nav-placeholder d-block d-lg-none"></div>
<div class="tabs-placeholder d-block d-lg-none"></div> -->
<!-- 搜索弹窗模态框 -->
<div class="modal search-modal" id="searchModal" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-fullscreen">
<div class="modal-content">
<div class="container px-0">
<div class="modal-header">
<div class="modal-title" id="exampleModalLabel"></div>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form class="d-flex search-form" target="_self" method="get" action="/" autocomplete="off" onsubmit="return Search.search(this)">
<div class="flex-fill">
<input type="search" placeholder="Search" name="s">
</div>
<div class="search-btn icon-image">
<input type="submit">
</div>
</form>
<ul class="search-logs on-search-history">
<!-- <li>
<a href="javascript:;">搜索历史</a>
</li> -->
</ul>
</div>
</div>
</div>
</div>
</div>
<!-- 边栏导航 -->
<div class="offcanvas offcanvas-start nav-bar-modal" tabindex="-1" id="navBarModal">
<div class="offcanvas-header">
<div>
<a href="/">
<img src="https://images.gamekillerapp.com/common/h5/images/gamekillerapp/navbar/logo.png" alt="LOGO" style="width: 120px;height: 24.5px;">
</a>
</div>
<div class="language d-flex align-items-center">
<div class="select icon-image text-end" id="dropdownMenuMobileLanguage" data-bs-toggle="dropdown" aria-label="language">
English
</div>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuMobileLanguage">
<li><a class="dropdown-item" href="javascript:languageChange('/');">English</a></li>
<li><a class="dropdown-item" href="javascript:languageChange('/zh-HK');">繁體中文</a></li>
</ul>
</div>
<div class="btn-close icon-image" data-bs-dismiss="offcanvas" aria-label="Close" style="display: none;"></div>
</div>
<div class="offcanvas-body">
<ul class="nav-list">
<li>
<a href="/" class="d-flex align-items-center ">Home</a>
</li>
<li>
<a href="/genre" class="d-flex align-items-center ">Genre</a>
</li>
<li>
<a href="/games/all/popular/page/1" class="d-flex align-items-center active">Games</a>
</li>
<li>
<a href="/apps" class="d-flex align-items-center ">Apps</a>
</li>
<li>
<a href="/FAQ" class="d-flex align-items-center ">FAQ</a>
</li>
</ul>
<div style="margin-top: 16px;">
<a class="header-feedback d-flex justify-content-center align-items-center" href="javascript:;" data-bs-toggle="modal" data-bs-target="#feedbackModal">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/Exclamation.png" style="height: 13px;">
<div class="color-50">
Feedback
</div>
</a>
</div>
</div>
</div>
</nav>
</header>
<!-- 下载页banner广告位 -->
<a class="minigame-a" href="https://gamekillerapp.com/games/pokemon-unlimited-2-0" aria-label="image" style="">
<img class="minigame-adv" style="width: 100%; margin-bottom: 0px; margin-top: 10px;height: 151.9px;" alt="image" src="https://images.gamekillerapp.com/images/vwf7t6mszm3zc1zeb.png">
</a>
<!-- -->
<div class="container px-0 d-none d-lg-block breadcrumb-box" style="display: block !important;">
<ol class="breadcrumb">
<li class="breadcrumb-item">
<a href="/">Home</a>
</li>
<li class="breadcrumb-item">
<a href="/games/all/popular/page/1">Games</a>
</li>
<li class="breadcrumb-item">
<a href="/games/top-girl">Top Girl</a>
</li>
<li class="breadcrumb-item">
<span>Download</span>
</li>
</ol>
</div>
<div class="container gamedesc-container">
<div class="sub-container bg-white">
<div class=" d-flex game-content">
<div class="icon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=120/images/bec6f9b2545741a38f1de878115aaea3.webp" alt="Top Girl">
</div>
<div class="d-flex flex-column justify-content-between flex-fill">
<h1 class="ellipsis-2 game-name">Download Top Girl Mod Apk v1.0.61(Speed Hack/No Ads)</h1>
<div class="d-flex align-items-center">
<div class="flex-fill">
<div class="updateTime">Updated On Dec 11, 2024</div>
<div class="game-hint">
<div class="d-flex align-items-center">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/light.png" style="margin-right: 4px;">
<div class="ellipsis-1" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-content="Speed Hack, No Ads." data-bs-placement="bottom">
Speed Hack, No Ads.
<br>
</div>
</div>
</div>
</div>
<div class="feedback-content on-feedback">
<a class="feedback d-flex justify-content-center align-items-center" href="javascript:;" data-bs-toggle="modal" data-bs-target="#feedbackModal">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/Exclamation.png" alt="">
<div class="color-50">
Feedback
</div>
</a>
</div>
</div>
</div>
<div class="rank d-none">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/game-rank/rank1.png" alt="">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/game-rank/rank2.png" alt="">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/game-rank/rank3.png" alt="">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/game-rank/rank4.png" alt="">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/game-rank/rank5.png" alt="">
</div>
</div>
<div class="m-hint-content">
<div class="d-flex">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/light.png" alt="">
<div class="m-game-hint ellipsis-2 flex-fill">
Speed Hack, No Ads.
<br>
</div>
</div>
</div>
<div class="download-2 text-center">
<section class="normal-download" style="display: none;">
<!-- <div class="normal-download-btn"
onclick="downloadApp(this)"
data-appid="86420"
data-url="https://download.gamercdn.top/download/top-girl-v1.0.61-MOD2-gamekillerapp.com.apk"
>
<img class="download-img1" src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/origin-download.png" alt="">
<span class="hide-text">
DOWNLOAD APK(860.50M)
</span>
</div> -->
<a class="normal-download-btn" href="https://download.gamercdn.top/download/top-girl-v1.0.61-MOD2-gamekillerapp.com.apk" onclick="downloadAppHref(this)" data-appid="86420" data-url="https://download.gamercdn.top/download/top-girl-v1.0.61-MOD2-gamekillerapp.com.apk">
<img class="download-img1" src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/origin-download.png" alt="">
<span class="hide-text">
DOWNLOAD APK(860.50M)
</span>
</a>
</section>
<!-- 高速下载 -->
<section class="high-speed-load">
<a href="https://download.gamercdn.top/download/game-killer-v5.3.1-MOD-gamekillerapp.com.apk" data-url="speedUrl" data-type="2" class="high-speed-download-btn" data-appid="86420" data-versioncode="121" data-historyid="95702" onclick="speedDownloadAppHref(this)">
<img src="https://images.gamekillerapp.com/common/h5/images/gamekillerapp/icon/play_on_gameKiller.png" alt="">
<div class="hide-text">
Fast Download
</div>
</a>
</section>
<!-- <div class="form-check form-check-box">
<img class="high-on" src="/images/gamekillerapp/icon/high_on.png" alt="">
<img class="high-off" src="/images/gamekillerapp/icon/high_off.png" alt="">
<div>
Fast Download In GameKiller.
</div>
</div> -->
<div class="form-check form-check-box">
<img class="high-on" src="/images/gamekillerapp/icon/high_on.png" alt="">
<img class="high-off" src="/images/gamekillerapp/icon/high_off.png" alt="" style="display: none;">
<div>
Fast Download In GameKiller.
</div>
</div>
</div>
<div style="position: relative;">
<a class="pc-download-c-bg" aria-label="gameKiller" href="/apps/game-killer"></a>
<a class="dowm-btn" style="font-weight: 600;" href="/apps/game-killer">Download v5.3.1(32.46MB)</a>
</div>
<div style="position: relative;">
<a class="h5-download-c-bg" aria-label="gameKiller" href="/apps/game-killer"></a>
<a class="h5-dowm-btn" aria-label="gameKiller download" style="font-weight: 600;" href="/apps/game-killer">Download v5.3.1(32.46MB)</a>
</div>
</div>
<div class="pc-history-box sub-container bg-white">
<div class="d-flex align-items-center">
<div class="d-flex align-items-center" style="width: 100%;justify-content: space-between;">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/games.png" alt="" class="category-icon">
<h2 class="sub-title ellipsis-1 flex-fill">History Versions</h2>
</div>
<div class="more-btn-box">
<a href="/games/top-girl/allhistory">
<!-- <span>More</span> -->
<div onclick="goUrl(this)" class="more-game" style="text-align: center;" data-jumpurl="/games/top-girl/allhistory" aria-label="more game">
<span>More</span>
</div>
</a>
</div>
</div>
<div class="history-content">
<a href="/games/top-girl/download/97">
<div class="history-item">
<div class="history-item-left">
<div class="history-item-left-test1">Top Girl</div>
<div class="history-item-left-test2">V1.0.58 | 839 MB | 2024-11-26</div>
<div class="history-item-left-test3">Speed Hack / No Ads</div>
</div>
<div class="history-item-right">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/cloud-download.png">
<div>
Download
</div>
</div>
</div>
</a>
<a href="/games/top-girl/download/94">
<div class="history-item">
<div class="history-item-left">
<div class="history-item-left-test1">Top Girl</div>
<div class="history-item-left-test2">V1.0.57 | 856 MB | 2024-11-22</div>
<div class="history-item-left-test3">Speed Hack / No Ads</div>
</div>
<div class="history-item-right">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/cloud-download.png">
<div>
Download
</div>
</div>
</div>
</a>
<a href="/games/top-girl/download/69">
<div class="history-item">
<div class="history-item-left">
<div class="history-item-left-test1">Top Girl</div>
<div class="history-item-left-test2">V1.0.54 | 881 MB | 2024-11-13</div>
<div class="history-item-left-test3">Speed Hack / No Ads</div>
</div>
<div class="history-item-right">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/cloud-download.png">
<div>
Download
</div>
</div>
</div>
</a>
</div>
</div>
<!-- 历史版本列表 -->
<!-- 推荐列表 -->
<div class="sub-container bg-white">
<div class="d-flex align-items-center">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/games.png" alt="" class="category-icon">
<h2 class="sub-title flex-fill">Recommended for you</h2>
<div onclick="goUrl(this)" class="more-game" style="text-align: center;" data-jumpurl="/games/all/popular/page/1" aria-label="more game">
<span>More</span>
</div>
</div>
<div class="row gx-0 recommended-games">
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/luna-re-dimensional-watcher" title="Luna Re Dimensional Watcher" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1656941224194_413.webp" alt="Luna Re Dimensional Watcher">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Luna Re Dimensional Watcher</div>
<div class="downloadSize ellipsis-1">
<span>1.10.0</span>
<span>+</span>
<span>627.04MB</span>
</div>
<div class="tools ellipsis-1">
Mod Menu
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/vivid-knight" title="Vivid Knight" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1657112054964_912.webp" alt="Vivid Knight">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Vivid Knight</div>
<div class="downloadSize ellipsis-1">
<span>1.3.1</span>
<span>+</span>
<span>231.85MB</span>
</div>
<div class="tools ellipsis-1">
Mod Menu / Free Shopping
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/european-war-7-medieval" title="European War 7 Medieval" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1657047944248_605.webp" alt="European War 7 Medieval">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">European War 7 Medieval</div>
<div class="downloadSize ellipsis-1">
<span>2.9.0</span>
<span>+</span>
<span>472.94MB</span>
</div>
<div class="tools ellipsis-1">
Speed Hack / No Ads
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/wild-fantasy-kingdom-td-strategy-game" title="Wild Fantasy Kingdom TD Strategy Game" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1657099949436_73.webp" alt="Wild Fantasy Kingdom TD Strategy Game">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Wild Fantasy Kingdom TD Strategy Game</div>
<div class="downloadSize ellipsis-1">
<span>1.6</span>
<span>+</span>
<span>101.66MB</span>
</div>
<div class="tools ellipsis-1">
Unlimited Resources
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/superhero-bike-stunt-gt-racing" title="Superhero Bike Stunt GT Racing" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1656973441456_677.webp" alt="Superhero Bike Stunt GT Racing">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Superhero Bike Stunt GT Racing</div>
<div class="downloadSize ellipsis-1">
<span>1.0.0</span>
<span>+</span>
<span>80.73MB</span>
</div>
<div class="tools ellipsis-1">
Unlimited Resources
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/gods-in-arena" title="Gods In Arena" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1656962744387_517.webp" alt="Gods In Arena">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Gods In Arena</div>
<div class="downloadSize ellipsis-1">
<span>4.0</span>
<span>+</span>
<span>130.46MB</span>
</div>
<div class="tools ellipsis-1">
Unlimited Resources
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/real-gangster-mafia-games-3d" title="Real Gangster Mafia Games 3D" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1657027737501_630.webp" alt="Real Gangster Mafia Games 3D">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Real Gangster Mafia Games 3D</div>
<div class="downloadSize ellipsis-1">
<span>0.1</span>
<span>+</span>
<span>51.84MB</span>
</div>
<div class="tools ellipsis-1">
Unlimited Resources
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/army-commander" title="Army Commander" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1656991158195_172.webp" alt="Army Commander">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Army Commander</div>
<div class="downloadSize ellipsis-1">
<span>1.2</span>
<span>+</span>
<span>79.77MB</span>
</div>
<div class="tools ellipsis-1">
No Ads Free Rewards
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/trial-xtreme-dirt-bike-racing" title="Trial Xtreme Dirt Bike Racing" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1657098723555_947.webp" alt="Trial Xtreme Dirt Bike Racing">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Trial Xtreme Dirt Bike Racing</div>
<div class="downloadSize ellipsis-1">
<span>1.24</span>
<span>+</span>
<span>93.93MB</span>
</div>
<div class="tools ellipsis-1">
Unlimited Resources
</div>
</div>
</a>
</div>
</div>
<!-- 小编推荐-列表 -->
<div class="sub-container bg-white">
<div class="d-flex align-items-center">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/games.png" alt="" class="category-icon">
<h2 class="sub-title flex-fill">Editor's Choice</h2>
<div onclick="goUrl(this)" class="more-game" style="text-align: center;" data-jumpurl="/type/editors-choices/page/1" aria-label="more game">
<span>More</span>
</div>
</div>
<div class="row gx-0 recommended-games">
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/pokemon-unlimited-2-0" title="Pokemon Unlimited 2.0" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/9dv9eafqmm0w5w8yk.png" alt="Pokemon Unlimited 2.0">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Pokemon Unlimited 2.0</div>
<div class="downloadSize ellipsis-1">
<span>1.0.1</span>
<span>+</span>
<span>572.50MB</span>
</div>
<div class="tools ellipsis-1">
Unlocked
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/laundry-store-simulator" title="Laundry Store Simulator" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/730c4fcf131d49278c8e901acde7627e.webp" alt="Laundry Store Simulator">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Laundry Store Simulator</div>
<div class="downloadSize ellipsis-1">
<span>1.0.25</span>
<span>+</span>
<span>231.54MB</span>
</div>
<div class="tools ellipsis-1">
Mod Menu / No Ads Free Rewards
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/undead-slayer-extreme" title="Undead Slayer Extreme" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1689650472294mGSj.webp" alt="Undead Slayer Extreme">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Undead Slayer Extreme</div>
<div class="downloadSize ellipsis-1">
<span>1.5.1</span>
<span>+</span>
<span>55.19MB</span>
</div>
<div class="tools ellipsis-1">
No Ads Free Rewards
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/monument-valley-3-netflix" title="Monument Valley 3 NETFLIX" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/82e3d40516ae41b393071efe94513ea9.webp" alt="Monument Valley 3 NETFLIX">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Monument Valley 3 NETFLIX</div>
<div class="downloadSize ellipsis-1">
<span>1.0.14999</span>
<span>+</span>
<span>380.78MB</span>
</div>
<div class="tools ellipsis-1">
Unlock all levels
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/police-pursuit-1" title="Police Pursuit" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/khpq3r5evm4go3wq8.webp" alt="Police Pursuit">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Police Pursuit</div>
<div class="downloadSize ellipsis-1">
<span>2.1.5</span>
<span>+</span>
<span>88.78MB</span>
</div>
<div class="tools ellipsis-1">
Unlocked Items
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/plants-vs-zombies-fusion-edition" title="Plants vs Zombies - Fusion Edition" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/1724755717580hJ52.jpg" alt="Plants vs Zombies - Fusion Edition">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Plants vs Zombies - Fusion Edition</div>
<div class="downloadSize ellipsis-1">
<span>2.1.6</span>
<span>+</span>
<span>299.08MB</span>
</div>
<div class="tools ellipsis-1">
Unlock all levels / Unlocked Premium
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/little-farm-story-idle-tycoon" title="Little Farm Story: Idle Tycoon" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/5ba70b15b7164d188c4698daf87d80e9.webp" alt="Little Farm Story: Idle Tycoon">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">Little Farm Story: Idle Tycoon</div>
<div class="downloadSize ellipsis-1">
<span>1.5.4</span>
<span>+</span>
<span>116.49MB</span>
</div>
<div class="tools ellipsis-1">
No Ads Free Rewards
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/carx-drift-racing-3" title="CarX Drift Racing 3" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/39475cbeef1a4a36955a66b9fdbcefee.webp" alt="CarX Drift Racing 3">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">CarX Drift Racing 3</div>
<div class="downloadSize ellipsis-1">
<span>1.0.0</span>
<span>+</span>
<span>984.90MB</span>
</div>
<div class="tools ellipsis-1">
Mod Menu
</div>
</div>
</a>
<a class="col-12 col-lg-4 col-xl-4 d-flex align-items-center" href="/games/supermarket-store-3d-simulator" title="My Supermarket Simulator 3D" rel="nofollow">
<div class="gameIcon">
<img src="https://images.gamekillerapp.com/cdn-cgi/image/width=96/images/fc962e52497b4eed92a38b1731929479.webp" alt="My Supermarket Simulator 3D">
</div>
<div class="flex-fill">
<div class="name ellipsis-1">My Supermarket Simulator 3D</div>
<div class="downloadSize ellipsis-1">
<span>1.5.9</span>
<span>+</span>
<span>228.35MB</span>
</div>
<div class="tools ellipsis-1">
No Ads Free Rewards
</div>
</div>
</a>
</div>
</div>
<div class="toast bg-success text-white" role="alert" aria-live="assertive" aria-atomic="true" id="toastSucceed">
<div class="toast-body" style="text-align: center;">
copied successfully
</div>
</div>
</div>
<script type="text/javascript">
window.pageDetailData = {"androidPackage":{"appId":86420,"appName":null,"downloadUrl":"https://download.gamercdn.top/download/top-girl-v1.0.61-MOD2-gamekillerapp.com.apk","downloadUrlMd5":null,"historyId":null,"id":95702,"lastModifiedTime":"2024-12-11 18:01:45","originPackageName":"com.a3.topgirl.gplay","packageName":"com.a3.topgirl.gplay","signature":"","size":902299648,"sizeStr":"861 MB","speedUrl":null,"speedUrlMd5":null,"version":"1.0.61","versionCode":121,"xapk":0},"antiAddictionGameFlag":null,"appOnline":{"appId":86420,"createTime":"2024-11-12 12:24:45","creator":null,"id":88485,"lastModifiedTime":"2024-11-12 12:24:45","lastModifier":null,"productId":1,"sysFlag":null},"appSpeed":null,"appVideos":[],"author":"User Update","categoryId":2,"companyId":1,"createTime":null,"creator":null,"detailUrl":null,"displayWay":null,"enableDownInternetStart":0,"existChannelQuarantine":null,"featureName":"top-girl","features":"Speed Hack, No Ads.","firstPublishTime":null,"forumSwitch":null,"frameworkSign":1,"gmGameId":null,"googleDownloadSwitch":false,"googlePackage":null,"googleServiceSwitch":false,"icon":"https://images.gamekillerapp.com/cdn-cgi/image/width=120/images/bec6f9b2545741a38f1de878115aaea3.webp","id":86420,"introduction":"<p><b><font size=\"4\">Top Girl Description:</font></b></p><p><span style=\"font-size: 14px;\">Have you ever dreamed of being the mastermind behind the next global girl group sensation?<strong>Top Girl</strong>gives you the opportunity to step into the shoes of a talent scout, manager, and fashion stylist all at once. It’s a game where your decisions shape the future of young, talented girls, turning them into the stars they are meant to be.</span></p><p><span style=\"font-size: 14px;\">From finding hidden gems with potential to building their personal brands and guiding them to superstardom,<strong>Top Girl</strong>lets you become the boss of a world-class girl group. With the right combination of style, music, and influence, you can lead them to stardom and watch them rise to the top of the music charts. Get ready to discover talent, create unique identities, and manage the path to fame!</span></p><p><span style=\"font-size: 14px;\"><strong>Form Your Dream Girl Group</strong></span></p><p><span style=\"font-size: 14px;\">The core of<strong>Top Girl</strong>is to form a successful girl group from scratch. Your journey begins by scouting for young girls with potential. These aspiring stars might not yet have their big break, but with your guidance and expertise, they could become the next big thing in the music industry.</span></p><p><span style=\"font-size: 14px;\">In the game, you’ll be introduced to a diverse range of characters, each with their own background, style, and personality. The challenge lies in finding the girls who have the right combination of talent, charisma, and stage presence to become stars. As a talent scout, you’ll need to assess their abilities, choose the right members for your group, and watch them grow under your direction.</span></p><p><span style=\"font-size: 14px;\"><strong>Customize Their Style and Music</strong></span></p><p><span style=\"font-size: 14px;\">Once you’ve selected your members, it’s time to help them shine. Every successful girl group has its own unique identity, and that starts with customizing the looks and sounds of your stars. In<strong>Top Girl</strong>, you have full control over your group's fashion and music style.</span></p><ul class=\" list-paddingleft-2\"><li><p><span style=\"font-size: 14px;\"><strong>Fashion:</strong>Choose from an extensive collection of outfits, accessories, and hairstyles to create a stunning image for each girl. The right look can elevate your group’s visual appeal and attract fans. Will they go for trendy streetwear, glamorous stage outfits, or something more edgy and futuristic? The choice is yours! Fashion plays a huge role in shaping the group’s public image and can also influence their appeal in different regions and markets.</span></p></li><li><p><span style=\"font-size: 14px;\"><strong>Music Style:</strong>Different music genres resonate with different audiences. You’ll need to craft your girl group’s sound, balancing popular styles with innovative new trends. Will you focus on K-pop, pop, EDM, or maybe even rock or R&B? Tailor their sound to make sure they stand out from the competition and build a loyal fanbase. Every hit song and catchy tune will be a step closer to success.</span></p></li></ul><p><span style=\"font-size: 14px;\"><strong>Manage Endorsements and Brand Deals</strong></span></p><p><span style=\"font-size: 14px;\">Being a star in the modern world isn't just about music—it's about building a brand. In<strong>Top Girl</strong>, you’ll have to navigate the world of endorsements, product deals, and media appearances to boost your group's profile. As their manager, you’ll handle negotiations with companies, choose the right deals that fit with your group’s image, and increase their exposure across various platforms.</span></p><p><span style=\"font-size: 14px;\">From fashion brands to cosmetics, tech gadgets, and more, your group will become the face of various products. Managing these deals properly is crucial for growing their influence and generating additional income, which can be reinvested into the group's career to help them reach new heights.</span></p><p><span style=\"font-size: 14px;\"><strong>Expand Their Influence and Fame</strong></span></p><p><span style=\"font-size: 14px;\">The road to stardom doesn’t stop with a successful debut. Once your girl group is on the map, you need to ensure their continuous rise to fame. In<strong>Top Girl</strong>, you’ll need to work on expanding their influence across multiple areas:</span></p><ul class=\" list-paddingleft-2\"><li><p><span style=\"font-size: 14px;\"><strong>Media Appearances:</strong>Appear on talk shows, participate in interviews, and star in music videos. These appearances will help boost their visibility and make them household names.</span></p></li><li><p><span style=\"font-size: 14px;\"><strong>Concerts and Tours:</strong>Plan concerts and world tours to showcase their talent to fans around the globe. Performing live is a huge part of any star’s career, and the more successful your group’s concerts are, the more fans they’ll attract.</span></p></li><li><p><span style=\"font-size: 14px;\"><strong>Fan Engagement:</strong>Connecting with fans is vital to building a loyal fanbase. Engage with them through social media, fan events, and fan clubs. The more your group interacts with their followers, the more devoted their fanbase will become.</span></p></li></ul><p><span style=\"font-size: 14px;\">As your girls grow in popularity, you’ll face new challenges and opportunities. You’ll have to carefully manage their public image, handle potential scandals, and maintain their relevance in the ever-changing world of entertainment.</span></p><p><span style=\"font-size: 14px;\"><strong>Be the Boss: Your Decisions Shape Their Destiny</strong></span></p><p><span style=\"font-size: 14px;\">As the boss of your girl group,<strong>Top Girl</strong>gives you total control over every aspect of their career. The decisions you make will impact their success, image, and public reception. Will you take risks and try out experimental music styles, or play it safe with mainstream pop hits? Will you push your girls to take on challenging performance schedules, or allow them some time off to recharge?</span></p><p><span style=\"font-size: 14px;\">With every decision, you’re not just managing a group of girls—you’re shaping the future of the entertainment industry. Your leadership, vision, and ability to stay ahead of trends will determine whether your girl group becomes an international sensation or fades into obscurity.</span></p><p><span style=\"font-size: 14px;\"><strong>Conclusion: Build Your Legacy in the Entertainment World</strong></span></p><p><span style=\"font-size: 14px;\">In conclusion,<strong>Top Girl</strong>is a thrilling simulation game that allows you to live out your dream of creating the next big girl group. Whether you’re customizing your stars’ fashion, managing their music careers, or navigating the world of endorsements and media, every aspect of their journey is in your hands.</span></p><p><span style=\"font-size: 14px;\">With endless possibilities for creativity, strategy, and leadership,<strong>Top Girl</strong>is the ultimate game for anyone who has ever wanted to manage a top-tier entertainment brand. Get ready to make your mark on the music industry and build the next big sensation. It’s time to create your girl group, manage their rise to fame, and lead them to the top!</span></p><p><strong><span style=\"letter-spacing: 0;font-size: 18px\">Top Girl MOD APK - MOD Speed Hack features detailed description:</span></strong></p><p><span style=\"letter-spacing: 0;font-size: 14px\">A game speed changer, as a tool that allows players to alter the speed of a game, offers a more flexible gaming experience. Whether it's software-based or hardware-based, game speed changers enable players to adjust the game's pace according to their preferences, bringing a range of unique advantages.</span></p><p><span style=\"letter-spacing: 0;font-size: 14px\">Firstly, software-based game speed changers are typically achieved by installing a software program. This program can directly modify the game code, enabling flexible control over the game speed. This means that players can finely tune the game's speed to match their own rhythm and skill level. This is particularly useful for players looking to tackle challenging levels, as they can slow down the speed to better cope with the difficulty.</span></p><p><span style=\"letter-spacing: 0;font-size: 14px\">On the other hand, hardware-based game speed changers involve the installation of a special hardware device. This device often simulates the functions of a game controller and allows real-time manual adjustments to the game speed. This offers players the ability to adapt to different situations and immerse themselves more deeply in the game, a feature not typically offered by software-based options.</span></p><p><span style=\"letter-spacing: 0;font-size: 14px\">One of the advantages of using a game speed changer is that players can tailor the game speed to their needs. If a player wants to quickly progress through a game, they can speed up the gameplay for greater efficiency. Conversely, if a player wishes to immerse themselves in the details and storyline of a game, they can slow down the game speed, enabling them to better appreciate the aesthetics and atmosphere of the game.</span></p><p><span style=\"letter-spacing: 0;font-size: 14px\">Additionally, game speed changers can be a valuable tool for those seeking to conquer challenging games. By slowing down the game speed, players can better handle complex levels and enemies, thereby improving their skill levels. This flexibility provides different types of players with more choices, allowing them to enjoy the game at their own pace.</span></p><p><span style=\"letter-spacing: 0;font-size: 14px\">In conclusion, a game speed changer offers players the freedom to adjust the game's pace, allowing them to have better control over their gaming experience. Whether it's software or hardware-based, they provide players with more options to enjoy games according to their preferences, while also increasing a game's replayability and challenge.</span></p><p><span style=\"font-size: 18px;\"><strong>Top Girl MOD APK Advantages<strong style=\"text-wrap: wrap; font-size: 18px;\">:</strong></strong></span></p><p><span style=\"font-size: 14px;\"></span></p><p style=\"color: #252525;\"><span style=\"font-size: 14px;\">In Top Girl, strategy games are the type of games that many players like; these games test the player's big picture. Strategy games are games where you need to manage and control the characters in the game to win and constantly think in order to find the best technique to win.</span></p><p style=\"color: #252525;\"><span style=\"font-size: 14px;\">Top Girl is a very brain-burning type of game. It allows players to control, manage, and use the people and things in the game freely, and through this freedom and the way they think about the enemy, they can achieve the goal required by the game.</span></p><p style=\"color: #252525;\"><span style=\"font-size: 14px;\">Growth and strategy in the palm of your hand, Top Girl allows you to use science, intuition, and strategy to guide Mark through a number of difficult choices and solve problems to keep him alive. classic war strategy mobile game, full of strategic player confrontation, in addition to hero skills, but also need to collect a variety of effective skill cards to make PVP full of strategy! Strategy game Looking forward to your joining! Extremely intelligent boss AI design, so that the battle is full of strategy and challenge. Return to strategy and wisdom, presenting the most classic gameplay!</span></p>","isCurrentVersion":false,"keywords":[{"appId":86420,"featureName":null,"id":10000018,"name":"Speed Hack","typeCode":"keyword","word":"Speed Hack"},{"appId":86420,"featureName":null,"id":10000022,"name":"No Ads","typeCode":"keyword","word":"No Ads"}],"labels":[{"enableClick":false,"featureName":null,"id":573,"name":"Strategy","typeCode":"label"},{"enableClick":false,"featureName":null,"id":777,"name":"Strategy","typeCode":"label"}],"language":"en","lastModifiedTime":null,"lastModifier":null,"modInfo":null,"name":"Top Girl","noAds":0,"packageKind":null,"performance":null,"platformId":1,"realNameAuthentication":null,"registerStatus":null,"screenshots":[{"appId":86420,"attribute":"horizontal","compressUrl":null,"id":1121066,"url":"https://images.gamekillerapp.com/images/8f38984f1c0b47fcafde9d4dd8aabca6.webp"},{"appId":86420,"attribute":"horizontal","compressUrl":null,"id":1121067,"url":"https://images.gamekillerapp.com/images/350bf4dabd30499284f120a8620059ce.webp"},{"appId":86420,"attribute":"horizontal","compressUrl":null,"id":1121068,"url":"https://images.gamekillerapp.com/images/dd1da438525142fc9ed4a8f5aa5e333b.webp"},{"appId":86420,"attribute":"horizontal","compressUrl":null,"id":1121069,"url":"https://images.gamekillerapp.com/images/5dae87bb6aa9445fb12f4baa053e86f9.webp"},{"appId":86420,"attribute":"horizontal","compressUrl":null,"id":1121070,"url":"https://images.gamekillerapp.com/images/7217f1f3734e4487a2e01165e78c0e5d.webp"}],"shortVideoSwitch":null,"showHide":1,"sort":null,"source":null,"sourceAppId":86419,"speedMode":0,"startForeignAccelerator":null,"startMode":1,"state":2,"summary":"SDH","supportSecondPlay":1,"sysFlag":null,"tags":[{"classificationId":null,"featureName":null,"id":140,"name":"Strategy","typeCode":"tag"}],"taurusGameId":0,"tips":"","title":"Top Girl Mod Apk v1.0.61(Speed Hack/No Ads)","updateTime":"Dec 11, 2024","useSuffixModApk":1,"virus":null}
</script>
<!-- style="position: fixed;bottom: 0;width: 100%;" -->
<footer>
<div class="footer">
<div class="container">
<div class="row">
<div class="col-md-10 offset-md-1 col-xl-8 offset-xl-2 col-md-sm offset-sm-12">
<div class="row links-box text-center">
<div class="col-lg-2 col-6 links ">
<a href="/agreement/gamekillerapp/en/user-agreement.html" target="_blank">Terms of Services</a>
</div>
<div class="col-lg-2 col-6 links">
<a href="javascript:;" class="on-modal-footer" data-title="Contact Us" data-src="/agreement/gamekillerapp/en/ContactUs.html">Contact Us</a>
</div>
<div class="col-lg-2 col-6 links">
<a href="/agreement/gamekillerapp/en/policy.html" target="_blank">Privacy Policy</a>
</div>
<div class="col-lg-2 col-6 links">
<a href="javascript:;" class="on-modal-footer" data-title="Advertisement" data-src="/agreement/gamekillerapp/en/Advertisement.html">Advertisement</a>
</div>
<div class="col-lg-2 col-6 links">
<a href="javascript:;" class="on-modal-footer" data-title="DMCA" data-src="/dmca/en.html">DMCA</a>
</div>
<div class="col-lg-2 col-6 d-flex justify-content-center align-items-center">
<a class="footer-feedback d-flex justify-content-center align-items-center" href="javascript:;" data-bs-toggle="modal" data-bs-target="#feedbackModal">
<img alt="feedback | gamekillerapp.com" style="height: 13px;" src="https://images.gamekillerapp.com/common/h5/images/modapkfans/icon/Exclamation.png">
<div class="color-50">
Feedback
</div>
</a>
</div>
</div>
</div>
</div>
<div class="d-flex align-items-center outer-links">
<hr class="flex-fill">
<div class="icons d-flex">
<!-- <a href="https://discord.gg/YeubKsanqU" target="_blank" class="icon-image" style="background-image: url('https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/discord.png');"></a>
<a href="https://t.me/gamekiller_app" class="icon-image" style="background-image: url('https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/telegram.png');"></a>
<a href="https://www.youtube.com/channel/UCe4BuM1TRWq1Qq3lOKNQwYg" class="icon-image" style="background-image: url('https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/youtube.png');"></a>
<a href="https://twitter.com/Gamekiller_Glob" class="icon-image" style="background-image: url('https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/twitter.png');"></a> -->
<a href="https://discord.gg/YeubKsanqU" target="_blank" class="icon-image">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/discord.png" style="width: 100%;height: 100%;" alt="discord">
</a>
<a href="https://t.me/gamekiller_app" class="icon-image">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/telegram.png" style="width: 100%;height: 100%;" alt="telegram">
</a>
<a href="https://www.youtube.com/channel/UCe4BuM1TRWq1Qq3lOKNQwYg" class="icon-image">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/youtube.png" style="width: 100%;height: 100%;" alt="youtube">
</a>
<a href="https://twitter.com/Gamekiller_Glob" class="icon-image">
<img src="https://images.gamekillerapp.com/common/h5/images/modapkfans/media-icon/twitter.png" style="width: 100%;height: 100%;" alt="twitter">
</a>
</div>
<hr class="flex-fill">
</div>
</div>
<div class="copyright">
<div class="container d-flex align-items-center justify-content-center" style="height: 100%;">
<p class="text-white" style="margin: 0;">© Copyright 2017-2024 GAMEKILLERAPP.COM</p>
</div>
</div>
</div>
<!-- 底部悬浮图 -->
<div class="foot-banner-station" id="foot-banner-station" style="height: 160px; width: 100%; display: none;"></div>
<div onclick="bannerClick(this)" class="foot-banner" id="foot-banner" data-url="" style="display: none;">
<!-- <div onclick="closeHandel(event)" class="foot-banner-close"></div> -->
<span class="iconfont icon-close foot-banner-close" onclick="closeHandel(event)"></span>
</div>
<!-- <div onclick="bannerClick()" class="foot-banner" id="foot-banner" style="background-image: url('https://images.gamekillerapp.com/cdn-cgi/image/width=590/common/h5/images/gamekillerapp/banner/grim-world-text-rpg.png');">
<div onclick="closeHandel(event)" class="foot-banner-close"></div>
</div> -->
<div class="modal fade" id="modal-footer">
<div class="modal-dialog modal-dialog-centered modal-lg">
<div class="modal-content">
<div class="modal-header">
<div class="modal-title" style="font-size: 1.25rem;"></div>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<iframe src="" frameborder="0" style="width: 100%;height: 400px;"></iframe>
</div>
</div>
</div>
</div>
</footer>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/jquery/jquery.min.js"></script>
<script>
let languageInfo1 = {"name":"en","url":""};
let el = document.getElementById('foot-banner')
let el1 = document.getElementById('foot-banner-station')
let dat = {
platformId:1,
productId:1,
statisticsNo:1,
terminal:'web',
code:'bottom_advert',
language:languageInfo1.name,
timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone,
languageAreaCode:getCountryCode()
}
sessionStorage.setItem('animationFlag', 'true')
// https://gamekillerapp.com/api/overseas/v1/banner/list-by-country-code
// http://api.overseas.bamenkeji.com
// https://api.gamekillerapp.com
// http://gamekillerapp.bamenkeji.com
// https://www.pre.gamekillerapp.com
let bList = []
if(sessionStorage.getItem('bottomImgList')){
bList = JSON.parse(sessionStorage.getItem('bottomImgList'))
setBanner()
}else{
if(!sessionStorage.getItem('footBannerIsClose')){
$.get("https://gamekillerapp.com/api/overseas/v1/banner/list-by-country-code",dat,function(res){
if(res.status == 1){
if(res.content && res.content.length > 0){
bList = res.content
sessionStorage.setItem('bottomImgList', JSON.stringify(bList))
}
}
setBanner()
})
}
}
function setBanner(){
let bottomIndex = Number(sessionStorage.getItem('bottomIndex'))
console.log(bottomIndex)
if(bList.length > 0){
// 图片list存缓存
// 设置图片索引
if(sessionStorage.getItem('bottomIndex')){
if(bList.length == 1){
sessionStorage.setItem('bottomIndex', 0)
}else{
if(bottomIndex == (bList.length - 1)){
sessionStorage.setItem('bottomIndex', 0)
}else{
sessionStorage.setItem('bottomIndex', Number(bottomIndex)+1)
}
}
bottomIndex = Number(sessionStorage.getItem('bottomIndex'))
}else{
sessionStorage.setItem('bottomIndex', 0)
bottomIndex = 0
}
console.log(bottomIndex)
// 显示图片
$('#foot-banner').css('background-image', `url(${JSON.parse(sessionStorage.getItem('bottomImgList'))[bottomIndex].imageUrl})`)
$('#foot-banner').attr('data-url', JSON.parse(sessionStorage.getItem('bottomImgList'))[bottomIndex].jumpUrl)
if(sessionStorage.getItem('animationFlag')){
setTimeout(function(){
el.setAttribute('class', 'foot-banner')
}, 300)
}else{
el.setAttribute('class', 'foot-banner foot-banner-animation')
}
el.style.display = 'block'
el1.style.display = 'block'
}else{
sessionStorage.removeItem('bottomIndex')
sessionStorage.removeItem('bottomImgList')
sessionStorage.removeItem('animationFlag')
el.style.display = 'none'
el1.style.display = 'none'
}
}
let closeHandel = (event) => {
event.stopPropagation();
if(bList.length == 1){
sessionStorage.setItem('footBannerIsClose', 'true')
}
let bottomIndex = Number(sessionStorage.getItem('bottomIndex'))
if([0,1,2].includes(bottomIndex)){
if(bottomIndex == (bList.length-1)){
// 删除倒数第一张
sessionStorage.setItem('bottomIndex', -1)
}else{
sessionStorage.setItem('bottomIndex', bottomIndex - 1)
}
bList.splice(bottomIndex,1)
sessionStorage.setItem('bottomImgList', JSON.stringify(bList))
}
el.style.display = 'none'
el1.style.display = 'none'
}
let bannerClick = (el) => {
let btnData = $(el).data();
// try {
// $.post("/report/footerBannerReport",{
// platformId: 1,
// productId: 1,
// statisticsNo: 1,
// terminal: 'web',
// language: languageView.name,
// packageName: 'com.google.game.datatest'
// },function(res){})
// } catch (error) {
// console.log(error)
// }
window.location.href= btnData.url
}
function getCountryCode() {
const language = navigator.language || navigator.userLanguage;
return language.replace('-', '_');
}
</script>
<!-- 意见反馈模板 -->
<style type="text/css">
#feedbackModal .modal-header{
border-bottom: none;
}
#feedbackModal .modal-footer{
border-top: none;
}
#feedbackModal .textarea{
height: 140px;
display: block;
width: 100%;
border: none !important;
padding: 0 8px;
margin: 0;
outline:transparent;
font-size: 14px;
resize:none;
}
#feedbackModal .box-1{
padding: 8px 0 32px 0;
position: relative;
border-radius: 4px;
border: #ccc solid 1px;
}
#feedbackModal .count{
position: absolute;
right: 8px;
bottom: 8px;
font-size: 12px;
color: #909090;
}
.upload-btn{
/* color: #fff;
background-color: #0d6efd;
border-color: #0d6efd;
display: inline-block;
font-weight: 400;
line-height: 1.5;
text-align: center;
text-decoration: none;
vertical-align: middle;
cursor: pointer;
user-select: none;
padding: .375rem .75rem;
font-size: 1rem;
border-radius: .25rem; */
color: #939393;
text-align: center;
cursor: pointer;
font-size: 3rem;
border-radius: .25rem;
border: 0.1rem dotted;
width: 70px;
height: 70px;
line-height: 70px;
}
.upload-btn:active{
opacity: 0.7;
}
.file-ul .file-li{
color: #939393;
font-size: 0.8rem;
padding: 0.2rem 0;
border-top: 0.05rem solid #d7d7d7;
display: flex;
align-items: center;
justify-content: space-between;
}
.file-ul .span1{
flex: 1;
}
.file-ul .file-del{
font-size: 1.2rem;
color: #6f6e6e;
display: inline-block;
margin-left: 30px;
text-align: right;
padding-right: 0.4rem;
cursor: pointer;
}
.file-ul .file-del:active{
opacity: 0.7;
}
.time-bg{
position: fixed;
width: 100%;
height: 100%;
margin: 0 auto;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
align-items: center;
justify-content: center;
background: rgba(0, 0, 0, 0.5);
/* ------------- */
display: flex;
flex-direction: column;
}
.time-bg img{
width: 50px;
height: 50px;
animation: rotate 2s infinite linear;
}
#file-process-num{
color: #fff;
position: absolute;
/* top: 50%; */
left: 50%;
transform: translate(-50%, -50%);
z-index: 9;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
}
#file-process-box{
color: #fff;
/* position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%); */
z-index: 9;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
}
#file-process-name{
max-width: 230px;
height: 18px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
@keyframes rotate {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@media (min-width: 576px) {
.upload-btn{
line-height: 58px;
}
}
@media (min-width: 992px) {
.upload-btn{
line-height: 58px;
}
}
@media (min-width: 1200px) {}
@media (min-width: 1400px) {}
</style>
<div class="modal fade" id="feedbackModal" tabindex="-1" aria-labelledby="feedbackModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<div class="modal-title" style="font-size: 1.25rem;" id="feedbackModalLabel">
<span>Leave your Feedback:</span>
</div>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form>
<div class="box-1">
<textarea class="textarea" maxlength="200" placeholder="Please input the feedback"></textarea>
<div class="count">0 / 200</div>
</div>
<!-- <div style="margin-top: 15px;margin-bottom: 0.6rem;">
<label for="fileUpload">
<div class="upload-btn">
+
</div>
</label>
<div style="color: #939393;font-size: 14px;">Please attach screenshots or videos</div>
<div class="rule1" style="color: red;font-size: 14px;">Maximum of 3 files allowed</div>
<input type="file" id="fileUpload" style="display: none;"
accept="image/*, video/*"
onchange="onFileChange()"
multiple>
</div> -->
<div class="file-ul"></div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary">Submit</button>
</div>
</div>
</div>
<div class="time-bg" style="display: none;">
<div id="file-process-num">
<div id="file-process">0</div>
<div>%</div>
</div>
<img src="https://images.gamekillerapp.com/common/h5/images/gamekillerapp/icon/time_bg1.png" alt="">
<div id="file-process-box">
<div><span class="file-current"></span></div>
<div id="file-process-name"></div>
</div>
</div>
</div>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/jquery/jquery.min.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/layer/layer.js"></script>
<!-- <script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/oss/aliyun-oss-sdk-4.4.4.min.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/oss/BBS-upload.js"></script> -->
<!-- <script type="text/javascript" src="/libs/aws/aws-sdk-2.235.1.min.js"></script> -->
<script>
$('.time-bg').hide()
$('.rule1').hide()
var TIPSTYPEOBJECT = {
'tips-0': {
'en': 'File does not exist',
'zh-HK': '文件不存在'
},
'tips-1': {
'en': 'You can upload up to 3 files',
'zh-HK': '文件最多上传3份'
},
'tips-2': {
'en': 'Invalid file format',
'zh-HK': '上传文件格式错误'
},
'tips-3': {
'en': 'File size must not exceed 100MB',
'zh-HK': '文件大小不允许超过100MB'
},
}
async function onFileChange(){
var bucket = new AWS.S3(aws_params);
let len = Number($('.file-ul').children().length)
let len1 = document.getElementsByClassName('file-ul')[0].childElementCount
let el_file = document.querySelector("#fileUpload");
let file = el_file.files || []
$('.rule1').hide()
if(file.length > 3 || (file.length + len) > 3 || (file.length + len1) > 3){
let arr = []
for(let i = 0; i < 3; i++){
arr.push(file[i])
}
file = arr
$('.rule1').show()
_layer.error('',TIPSTYPEOBJECT['tips-1'][String(languageView.name)]);
return
}
let systemModule = 'IMAGE'
let types = '.jpg, .jpeg, .png, .gif, .webp, .tiff, .mp4, .mov, .ogg, .f4v, .avi, .wmv, .mpeg, .webm, .mkv, .flv, .3gp, .ts, .mts, .vob'
let promiseList = [] // 存放异步上传项
let flag = false
let tipsCode = '0'
$('.file-total').text(file.length)
for(let i = 0; i < file.length; i++){
let fileType = ''
let res = await showTip(file[i],len, len1,types)
if(res.statu == 0){
tipsCode = res.code
flag = true
}
if(flag){
break
}
}
if(flag){
_layer.error('',TIPSTYPEOBJECT[tipsCode][String(languageView.name)]);
$('.time-bg').hide()
}else{
$('.time-bg').show()
let arr = []
let liHtml = ''
for(let i = 0; i < file.length; i++){
let res = await showTip(file[i],len, len1,types)
if(res.statu == 1){
systemModule = res.type && String(res.type) == 'image' ? 'IMAGE' : 'VIDEO'
if (systemModule == 'IMAGE') {
path = "feedback_files/";
} else if (systemModule == 'VIDEO') {
path = "feedback_files/";
}
var _key = path + new Date().getTime() + file[i].name.substr(file[i].name.lastIndexOf('.'))
var params = {
Bucket: 'product-download-file', // 存储桶名称
Key: _key, // 文件名,重名会覆盖
ContentType: file[i].type, // 文件类型
Body: file[i], // 具体的文件
'Access-Control-Allow-Credentials': '*',
'ACL': 'public-read'
};
let createdUploader = (params) => {
return new Promise((resolve, reject) => {
bucket.upload(params, function (err, data) {
if (err) {
layer.msg("上传发生错误" + err.message);
$('.time-bg').hide()
return;
}
let _Location = decodeURIComponent(data.Location)
let results_url = _Location.substr(_Location.indexOf(_key))
console.log('https://images.gamekillerapp.com/' + results_url)
arr.push({
url: 'https://images.gamekillerapp.com/' + results_url,
name: file[i].name
})
resolve({data});
reject({err});
}).on('httpUploadProgress', function (e) {
var precent = ((parseInt(e.loaded, 10) / parseInt(e.total, 10)) * 100);
$('.file-current').text(`(${i+1}/${file.length})-`)
$('#file-process-name').text(file[i].name)
$('#file-process').text(Number(precent).toFixed(0))
});
});
}
let res11 = await createdUploader(params)
}
}
arr.forEach((v, i) => {
liHtml += `
<div class="file-li" data-name="${v.name}" data-url="${arr.length > 0 ? v.url : ''}">
<span class="span1">${v.name}</span>
<span class="file-del" onclick="delHandle(this)">x</span>
</div>
`
})
$('.time-bg').hide()
$('.file-ul').eq(0).append(liHtml)
}
}
// 获取阿里云OSS上传凭证
function getUploadInfo(systemModule){
return new Promise((resolve, reject) => {
try {
$.post("/report/getUploadInfo",{
platformId: 1,
productId: 1,
statisticsNo: 1,
terminal: 'web',
language: languageView.name,
systemModule
},function(res){
var ossRes = res.content || {};
createdUploader(ossRes);
resolve(res)
})
} catch (error) {
_layer.error('',error);
}
})
}
// 删除
function delHandle(enent){
$('.rule1').hide()
$(enent).parent().remove()
}
// 判断展示error信息
function showTip(v,len, len1,types){
let reg1 = /.+(?=\/)/g;
let reg2 = /(?<=\/).+/g;
let code = false
return new Promise((relove, reject) => {
let t1 = v.type.match(reg1)[0]
let t2 = v.type.match(reg2)[0]
if(len == 3 || len1 == 3){
code = 'tips-1'
}
if(!types.includes(t2)){
code = 'tips-2'
}
if((Number(v.size) / 1024 / 1024) > 100){
code = 'tips-3'
}
if(!code){
relove({statu: 1, type: t1})
}else{
relove({statu: 0, code})
}
})
}
// 处理异步上传
function promiseUpload(file, list){
return new Promise((resolve, reject) => {
batchUploadFiles([file], list, (res) => {
if(res && res.length > 0){
resolve(res[0])
}
})
})
}
// async function onFileChange(){
// let len = Number($('.file-ul').children().length)
// let len1 = document.getElementsByClassName('file-ul')[0].childElementCount
// let el_file = document.querySelector("#fileUpload");
// let file = el_file.files || []
// $('.rule1').hide()
// if(file.length > 3){
// let arr = []
// for(let i = 0; i < 3; i++){
// arr.push(file[i])
// }
// file = arr
// $('.rule1').show()
// // _layer.error('',TIPSTYPEOBJECT['tips-1'][String(languageView.name)]);
// // return
// }
// let systemModule = 'IMAGE'
// let types = '.jpg, .jpeg, .png, .gif, .webp, .tiff, .mp4, .mov, .ogg, .f4v, .avi, .wmv, .mpeg, .webm, .mkv, .flv, .3gp, .ts, .mts, .vob'
// let promiseList = [] // 存放异步上传项
// let flag = false
// let tipsCode = '0'
// $('.file-total').text(file.length)
// for(let i = 0; i < file.length; i++){
// let fileType = ''
// let res = await showTip(file[i],len, len1,types)
// if(res.statu == 0){
// tipsCode = res.code
// flag = true
// }
// if(flag){
// break
// }
// }
// if(flag){
// _layer.error('',TIPSTYPEOBJECT[tipsCode][String(languageView.name)]);
// $('.time-bg').hide()
// }else{
// $('.time-bg').show()
// let arr = []
// let liHtml = ''
// for(let i = 0; i < file.length; i++){
// let res = await showTip(file[i],len, len1,types)
// if(res.statu == 1){
// systemModule = res.type && String(res.type) == 'image' ? 'IMAGE' : 'VIDEO'
// let a = await getUploadInfo(systemModule)
// // let b = await promiseList.push(promiseUpload(file[i], file))
// let result = await promiseUpload(file[i], file)
// if(result){
// result = result.replace('https://product-download-file.oss-cn-hongkong.aliyuncs.com', "https://images.gamekillerapp.com/")
// arr.push(result);
// liHtml += `
// <div class="file-li" data-name="${file[i].name}" data-url="${arr.length > 0 ? arr[0] : ''}">
// <span class="span1">${file[i].name}</span>
// <span class="file-del" onclick="delHandle(this)">x</span>
// </div>
// `
// }
// }
// }
// $('.time-bg').hide()
// $('.file-ul').eq(0).append(liHtml)
// // Promise.all(promiseList).then(res => {
// // res.forEach(function (item) {
// // if(typeof item == 'string'){
// // item = item.replace('https://product-download-file.oss-cn-hongkong.aliyuncs.com', "https://images.gamekillerapp.com/")
// // arr.push(item);
// // }
// // })
// // let liHtml = ''
// // arr.forEach((v, i) => {
// // liHtml += `
// // <div class="file-li" data-name="${file[i].name}" data-url="${arr.length > 0 ? v : ''}">
// // <span class="span1">${file[i].name}</span>
// // <span class="file-del" onclick="delHandle(this)">x</span>
// // </div>
// // `
// // })
// // $('.time-bg').hide()
// // $('.file-ul').eq(0).append(liHtml)
// // })
// }
// }
</script>
<!--
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async="" src="https://www.googletagmanager.com/gtag/js?id=G-L7JZV5T444"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-L7JZV5T444');
</script>
-->
<div style="display: none;">
<span>language</span>
<a href="/">English</a>
<a href="/zh-HK">繁體中文</a>
</div>
<script type="text/javascript">
window.languageView = {"name":"en","url":""}
</script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/bootstrap-5.1.3/js/bootstrap.bundle.min.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/jquery/jquery.min.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/layer/layer.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/javascripts/global/global.js"></script>
<!-- 意见反馈模板 -->
<style type="text/css">
#feedbackModal .modal-header{
border-bottom: none;
}
#feedbackModal .modal-footer{
border-top: none;
}
#feedbackModal .textarea{
height: 140px;
display: block;
width: 100%;
border: none !important;
padding: 0 8px;
margin: 0;
outline:transparent;
font-size: 14px;
resize:none;
}
#feedbackModal .box-1{
padding: 8px 0 32px 0;
position: relative;
border-radius: 4px;
border: #ccc solid 1px;
}
#feedbackModal .count{
position: absolute;
right: 8px;
bottom: 8px;
font-size: 12px;
color: #909090;
}
.upload-btn{
/* color: #fff;
background-color: #0d6efd;
border-color: #0d6efd;
display: inline-block;
font-weight: 400;
line-height: 1.5;
text-align: center;
text-decoration: none;
vertical-align: middle;
cursor: pointer;
user-select: none;
padding: .375rem .75rem;
font-size: 1rem;
border-radius: .25rem; */
color: #939393;
text-align: center;
cursor: pointer;
font-size: 3rem;
border-radius: .25rem;
border: 0.1rem dotted;
width: 70px;
height: 70px;
line-height: 70px;
}
.upload-btn:active{
opacity: 0.7;
}
.file-ul .file-li{
color: #939393;
font-size: 0.8rem;
padding: 0.2rem 0;
border-top: 0.05rem solid #d7d7d7;
display: flex;
align-items: center;
justify-content: space-between;
}
.file-ul .span1{
flex: 1;
}
.file-ul .file-del{
font-size: 1.2rem;
color: #6f6e6e;
display: inline-block;
margin-left: 30px;
text-align: right;
padding-right: 0.4rem;
cursor: pointer;
}
.file-ul .file-del:active{
opacity: 0.7;
}
.time-bg{
position: fixed;
width: 100%;
height: 100%;
margin: 0 auto;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
align-items: center;
justify-content: center;
background: rgba(0, 0, 0, 0.5);
/* ------------- */
display: flex;
flex-direction: column;
}
.time-bg img{
width: 50px;
height: 50px;
animation: rotate 2s infinite linear;
}
#file-process-num{
color: #fff;
position: absolute;
/* top: 50%; */
left: 50%;
transform: translate(-50%, -50%);
z-index: 9;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
}
#file-process-box{
color: #fff;
/* position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%); */
z-index: 9;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
}
#file-process-name{
max-width: 230px;
height: 18px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
@keyframes rotate {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@media (min-width: 576px) {
.upload-btn{
line-height: 58px;
}
}
@media (min-width: 992px) {
.upload-btn{
line-height: 58px;
}
}
@media (min-width: 1200px) {}
@media (min-width: 1400px) {}
</style>
<div class="modal fade" id="feedbackModal" tabindex="-1" aria-labelledby="feedbackModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<div class="modal-title" style="font-size: 1.25rem;" id="feedbackModalLabel">
<span>Leave your Feedback:</span>
</div>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form>
<div class="box-1">
<textarea class="textarea" maxlength="200" placeholder="Please input the feedback"></textarea>
<div class="count">0 / 200</div>
</div>
<!-- <div style="margin-top: 15px;margin-bottom: 0.6rem;">
<label for="fileUpload">
<div class="upload-btn">
+
</div>
</label>
<div style="color: #939393;font-size: 14px;">Please attach screenshots or videos</div>
<div class="rule1" style="color: red;font-size: 14px;">Maximum of 3 files allowed</div>
<input type="file" id="fileUpload" style="display: none;"
accept="image/*, video/*"
onchange="onFileChange()"
multiple>
</div> -->
<div class="file-ul"></div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary">Submit</button>
</div>
</div>
</div>
<div class="time-bg" style="display: none;">
<div id="file-process-num">
<div id="file-process">0</div>
<div>%</div>
</div>
<img src="https://images.gamekillerapp.com/common/h5/images/gamekillerapp/icon/time_bg1.png" alt="">
<div id="file-process-box">
<div><span class="file-current"></span></div>
<div id="file-process-name"></div>
</div>
</div>
</div>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/jquery/jquery.min.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/layer/layer.js"></script>
<!-- <script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/oss/aliyun-oss-sdk-4.4.4.min.js"></script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/oss/BBS-upload.js"></script> -->
<!-- <script type="text/javascript" src="/libs/aws/aws-sdk-2.235.1.min.js"></script> -->
<script>
$('.time-bg').hide()
$('.rule1').hide()
var TIPSTYPEOBJECT = {
'tips-0': {
'en': 'File does not exist',
'zh-HK': '文件不存在'
},
'tips-1': {
'en': 'You can upload up to 3 files',
'zh-HK': '文件最多上传3份'
},
'tips-2': {
'en': 'Invalid file format',
'zh-HK': '上传文件格式错误'
},
'tips-3': {
'en': 'File size must not exceed 100MB',
'zh-HK': '文件大小不允许超过100MB'
},
}
async function onFileChange(){
var bucket = new AWS.S3(aws_params);
let len = Number($('.file-ul').children().length)
let len1 = document.getElementsByClassName('file-ul')[0].childElementCount
let el_file = document.querySelector("#fileUpload");
let file = el_file.files || []
$('.rule1').hide()
if(file.length > 3 || (file.length + len) > 3 || (file.length + len1) > 3){
let arr = []
for(let i = 0; i < 3; i++){
arr.push(file[i])
}
file = arr
$('.rule1').show()
_layer.error('',TIPSTYPEOBJECT['tips-1'][String(languageView.name)]);
return
}
let systemModule = 'IMAGE'
let types = '.jpg, .jpeg, .png, .gif, .webp, .tiff, .mp4, .mov, .ogg, .f4v, .avi, .wmv, .mpeg, .webm, .mkv, .flv, .3gp, .ts, .mts, .vob'
let promiseList = [] // 存放异步上传项
let flag = false
let tipsCode = '0'
$('.file-total').text(file.length)
for(let i = 0; i < file.length; i++){
let fileType = ''
let res = await showTip(file[i],len, len1,types)
if(res.statu == 0){
tipsCode = res.code
flag = true
}
if(flag){
break
}
}
if(flag){
_layer.error('',TIPSTYPEOBJECT[tipsCode][String(languageView.name)]);
$('.time-bg').hide()
}else{
$('.time-bg').show()
let arr = []
let liHtml = ''
for(let i = 0; i < file.length; i++){
let res = await showTip(file[i],len, len1,types)
if(res.statu == 1){
systemModule = res.type && String(res.type) == 'image' ? 'IMAGE' : 'VIDEO'
if (systemModule == 'IMAGE') {
path = "feedback_files/";
} else if (systemModule == 'VIDEO') {
path = "feedback_files/";
}
var _key = path + new Date().getTime() + file[i].name.substr(file[i].name.lastIndexOf('.'))
var params = {
Bucket: 'product-download-file', // 存储桶名称
Key: _key, // 文件名,重名会覆盖
ContentType: file[i].type, // 文件类型
Body: file[i], // 具体的文件
'Access-Control-Allow-Credentials': '*',
'ACL': 'public-read'
};
let createdUploader = (params) => {
return new Promise((resolve, reject) => {
bucket.upload(params, function (err, data) {
if (err) {
layer.msg("上传发生错误" + err.message);
$('.time-bg').hide()
return;
}
let _Location = decodeURIComponent(data.Location)
let results_url = _Location.substr(_Location.indexOf(_key))
console.log('https://images.gamekillerapp.com/' + results_url)
arr.push({
url: 'https://images.gamekillerapp.com/' + results_url,
name: file[i].name
})
resolve({data});
reject({err});
}).on('httpUploadProgress', function (e) {
var precent = ((parseInt(e.loaded, 10) / parseInt(e.total, 10)) * 100);
$('.file-current').text(`(${i+1}/${file.length})-`)
$('#file-process-name').text(file[i].name)
$('#file-process').text(Number(precent).toFixed(0))
});
});
}
let res11 = await createdUploader(params)
}
}
arr.forEach((v, i) => {
liHtml += `
<div class="file-li" data-name="${v.name}" data-url="${arr.length > 0 ? v.url : ''}">
<span class="span1">${v.name}</span>
<span class="file-del" onclick="delHandle(this)">x</span>
</div>
`
})
$('.time-bg').hide()
$('.file-ul').eq(0).append(liHtml)
}
}
// 获取阿里云OSS上传凭证
function getUploadInfo(systemModule){
return new Promise((resolve, reject) => {
try {
$.post("/report/getUploadInfo",{
platformId: 1,
productId: 1,
statisticsNo: 1,
terminal: 'web',
language: languageView.name,
systemModule
},function(res){
var ossRes = res.content || {};
createdUploader(ossRes);
resolve(res)
})
} catch (error) {
_layer.error('',error);
}
})
}
// 删除
function delHandle(enent){
$('.rule1').hide()
$(enent).parent().remove()
}
// 判断展示error信息
function showTip(v,len, len1,types){
let reg1 = /.+(?=\/)/g;
let reg2 = /(?<=\/).+/g;
let code = false
return new Promise((relove, reject) => {
let t1 = v.type.match(reg1)[0]
let t2 = v.type.match(reg2)[0]
if(len == 3 || len1 == 3){
code = 'tips-1'
}
if(!types.includes(t2)){
code = 'tips-2'
}
if((Number(v.size) / 1024 / 1024) > 100){
code = 'tips-3'
}
if(!code){
relove({statu: 1, type: t1})
}else{
relove({statu: 0, code})
}
})
}
// 处理异步上传
function promiseUpload(file, list){
return new Promise((resolve, reject) => {
batchUploadFiles([file], list, (res) => {
if(res && res.length > 0){
resolve(res[0])
}
})
})
}
// async function onFileChange(){
// let len = Number($('.file-ul').children().length)
// let len1 = document.getElementsByClassName('file-ul')[0].childElementCount
// let el_file = document.querySelector("#fileUpload");
// let file = el_file.files || []
// $('.rule1').hide()
// if(file.length > 3){
// let arr = []
// for(let i = 0; i < 3; i++){
// arr.push(file[i])
// }
// file = arr
// $('.rule1').show()
// // _layer.error('',TIPSTYPEOBJECT['tips-1'][String(languageView.name)]);
// // return
// }
// let systemModule = 'IMAGE'
// let types = '.jpg, .jpeg, .png, .gif, .webp, .tiff, .mp4, .mov, .ogg, .f4v, .avi, .wmv, .mpeg, .webm, .mkv, .flv, .3gp, .ts, .mts, .vob'
// let promiseList = [] // 存放异步上传项
// let flag = false
// let tipsCode = '0'
// $('.file-total').text(file.length)
// for(let i = 0; i < file.length; i++){
// let fileType = ''
// let res = await showTip(file[i],len, len1,types)
// if(res.statu == 0){
// tipsCode = res.code
// flag = true
// }
// if(flag){
// break
// }
// }
// if(flag){
// _layer.error('',TIPSTYPEOBJECT[tipsCode][String(languageView.name)]);
// $('.time-bg').hide()
// }else{
// $('.time-bg').show()
// let arr = []
// let liHtml = ''
// for(let i = 0; i < file.length; i++){
// let res = await showTip(file[i],len, len1,types)
// if(res.statu == 1){
// systemModule = res.type && String(res.type) == 'image' ? 'IMAGE' : 'VIDEO'
// let a = await getUploadInfo(systemModule)
// // let b = await promiseList.push(promiseUpload(file[i], file))
// let result = await promiseUpload(file[i], file)
// if(result){
// result = result.replace('https://product-download-file.oss-cn-hongkong.aliyuncs.com', "https://images.gamekillerapp.com/")
// arr.push(result);
// liHtml += `
// <div class="file-li" data-name="${file[i].name}" data-url="${arr.length > 0 ? arr[0] : ''}">
// <span class="span1">${file[i].name}</span>
// <span class="file-del" onclick="delHandle(this)">x</span>
// </div>
// `
// }
// }
// }
// $('.time-bg').hide()
// $('.file-ul').eq(0).append(liHtml)
// // Promise.all(promiseList).then(res => {
// // res.forEach(function (item) {
// // if(typeof item == 'string'){
// // item = item.replace('https://product-download-file.oss-cn-hongkong.aliyuncs.com', "https://images.gamekillerapp.com/")
// // arr.push(item);
// // }
// // })
// // let liHtml = ''
// // arr.forEach((v, i) => {
// // liHtml += `
// // <div class="file-li" data-name="${file[i].name}" data-url="${arr.length > 0 ? v : ''}">
// // <span class="span1">${file[i].name}</span>
// // <span class="file-del" onclick="delHandle(this)">x</span>
// // </div>
// // `
// // })
// // $('.time-bg').hide()
// // $('.file-ul').eq(0).append(liHtml)
// // })
// }
// }
</script>
<script type="text/javascript" src="https://images.gamekillerapp.com/common/h5/libs/smartphoto/smartphoto.min.js"></script>
<script async="" type="text/javascript" src="/javascripts/games/detail-modapkfans.js"></script>
<script type="text/javascript">
// 自动下载
$(".download-2 .download-btn").click(function(){
$(this).html(window.languageView.name == 'zh-HK' ? '準備下載……':'Preparing to download……');
})
$(".normal-download").hide()
$(".download-title1").show()
// 增加高速下载button
$('.normal-download').hide()
$('.high-speed-load').show()
$('.high-on').show()
$('.high-off').hide()
$('.high-on').on('click', function(e){
$('.high-off').show()
$('.high-on').hide()
$('.normal-download').show()
$('.high-speed-load').hide()
})
$('.high-off').on('click', function(e){
$('.high-off').hide()
$('.high-on').show()
$('.normal-download').hide()
$('.high-speed-load').show()
})
$('.high-speed').on('change', function(e){
let flag = e.target.checked
// 高速和普通下载按钮切换
if(flag){
$('.normal-download').hide()
$('.high-speed-load').show()
}else{
$('.normal-download').show()
$('.high-speed-load').hide()
}
})
function setDown(){
let count = 8; // 初始倒计时时间
let countdown = setInterval(function() {
// 更新倒计时显示
if (count === 1) {
// 倒计时结束,清除计时器
clearInterval(countdown);
$(".time-bg").hide()
$(".normal-download-time").show()
$(".download-title1").hide()
} else {
// 倒计时减1
count--;
$(".time-num").html(count)
}
}, 1000);
}
// setDown()
function goUrl(el){
let url = $(el).data("jumpurl");
window.location.href = url
}
</script>
<script type="text/javascript">
let languageInfo2 = {"name":"en","url":""};
let topImgs = [{"app":null,"appId":71730,"bannerImageId":null,"code":null,"countryGroupBannerImageId":1324,"id":20,"imageUrl":"https://images.gamekillerapp.com/images/vwf7t6mszm3zc1zeb.png","jumpUrl":"https://gamekillerapp.com/games/pokemon-unlimited-2-0","sourceAppId":0,"title":""}];
$('.minigame-a').hide()
if(topImgs && topImgs.length > 0){
sessionStorage.setItem('topImgList', JSON.stringify(topImgs))
let topIndex = Number(sessionStorage.getItem('topIndex')) || null
if(topImgs.length == 1){
topIndex = 0
}else{
if(sessionStorage.getItem('topIndex')){
sessionStorage.setItem('topIndex', Number(topIndex)+1)
topIndex = Number(sessionStorage.getItem('topIndex'))
}else{
sessionStorage.setItem('topIndex', 0)
topIndex = 0
}
}
if(topIndex > Number(JSON.parse(sessionStorage.getItem('topImgList')).length-1)){
sessionStorage.setItem('topIndex', 0)
topIndex = 0
}
$('.minigame-a').attr('href', JSON.parse(sessionStorage.getItem('topImgList'))[topIndex].jumpUrl)
$('.minigame-adv').attr('src', JSON.parse(sessionStorage.getItem('topImgList'))[topIndex].imageUrl)
$('.minigame-a').show()
}else{
$('.minigame-a').hide()
}
</script>
<script async="" src="https://static.addtoany.com/menu/page.js"></script>
<div style="position: static;"><div style="height: 1px; width: 1px; position: absolute; z-index: 100000; top: 0px; visibility: hidden;"><iframe id="a2a_sm_ifr" title="AddToAny Utility Frame" aria-hidden="true" src="https://static.addtoany.com/menu/sm.25.html#type=core&event=load" style="height: 1px; width: 1px; border: 0px; left: 0px; top: 0px; position: absolute; z-index: 100000; display: none;"></iframe></div></div></body></html>