No video source URL found. Page content: <!DOCTYPE html> <html lang="zh"> <head> <meta charset="utf-8"> <link rel="alternate" hreflang="x-default" href="https://njav.tv/en/ajax/v/240399/videos"> <link rel="alternate" hreflang="zh-Hant" href="https://njav.tv/zh/ajax/v/240399/videos"> <link rel="alternate" hreflang="zh-Hans" href="https://njav.tv/zh/ajax/v/240399/videos"> <link rel="alternate" hreflang="en" href="https://njav.tv/en/ajax/v/240399/videos"> <link rel="alternate" hreflang="ja" href="https://njav.tv/ja/ajax/v/240399/videos"> <link rel="alternate" hreflang="ko" href="https://njav.tv/ko/ajax/v/240399/videos"> <link rel="alternate" hreflang="zh" href="https://njav.tv/zh/ajax/v/240399/videos"> <link rel="alternate" hreflang="th" href="https://njav.tv/th/ajax/v/240399/videos"> <link rel="alternate" hreflang="ms" href="https://njav.tv/ms/ajax/v/240399/videos"> <link rel="alternate" hreflang="de" href="https://njav.tv/de/ajax/v/240399/videos"> <link rel="alternate" hreflang="fr" href="https://njav.tv/fr/ajax/v/240399/videos"> <link rel="alternate" hreflang="vi" href="https://njav.tv/vi/ajax/v/240399/videos"> <link rel="alternate" hreflang="id" href="https://njav.tv/id/ajax/v/240399/videos"> <link rel="alternate" hreflang="fil" href="https://njav.tv/fil/ajax/v/240399/videos"> <link rel="alternate" hreflang="hi" href="https://njav.tv/hi/ajax/v/240399/videos"> <title> - 123AV</title> <meta name="description" content=""> <meta name="keywords" content="免费AV,高清AV,在线观看AV,免费JAV,手机AV,未审查AV,泄露未审查AV"> <meta property="og:url" content="https://njav.tv/zh/ajax/v/240399/videos"> <meta property="og:site_name" content="njav.tv"> <meta property="og:title" content=" - 123AV"> <meta property="og:description" content=""> <meta property="og:type" content="website"> <meta property="og:image" content="https://njav.tv/assets/123av/images/logo-square.png?v=123"> <base href="https://njav.tv/zh/"> <link rel="icon" type="image/png" href="https://njav.tv/assets/123av/images/favicon.png"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.1/css/all.min.css"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://njav.tv/assets/123av/dist/app.css?v=1737175421"> <script> window.cdnUrl = 'https://cdn.avfever.net'; </script> <script type="text/javascript" src="https://njav.tv/assets/123av/dist/app.js?v=1737175421" defer></script> </head> <body> <div id="app" v-scope @vue:mounted="init(); $el.style.display=null; cookie.set('locale', 'zh');" style="display:none"> <header :class="{'show-menu': app.isMenuOpen, 'hide': app.isHeaderHidden}"> <div class="container"> <div class="row wrap"> <div class="col-auto justify-content-center"> <div id="logo" class="fs-15 fw-bold"> <a class="logo" href="https://njav.tv/zh" title="在线观看高清AV | 免费高质量AV"> <img src="https://njav.tv/assets/123av/images/logo.png?v=123av" /> </a> </div> </div> <div class="col-auto nav-wrap"> <ul id="nav" :style="{'max-height': (screen.height * 0.6) + 'px'}"> <li class="has-child" v-scope="{open: storage.get('menu-1', 1)}" :class="{show: open}"> <a href="javascript:;" @click="storage.set('menu-1', open=!open)">观看JAV</a> <ul> <li><a href="dm1/censored">审查</a></li> <li><a href="dm1/recent-update">最近更新</a></li> <li><a href="dm1/new-release">新发布</a></li> <li><a href="dm1/uncensored">未审查</a></li> <li><a href="dm1/uncensored-leaked">泄露未审查</a></li> <li><a href="dm1/vr">VR</a></li> <li><a href="actresses?sort=most_viewed_today">热门女演员</a></li> <li><a href="dm1/trending">热门</a></li> <li><a href="dm1/today-hot">今天最多观看</a></li> <li><a href="dm1/weekly-hot">本周最多观看</a></li> <li><a href="dm1/monthly-hot">本月最多观看</a></li> </ul> </li> <li class="has-child" v-scope="{open: storage.get('menu-4')}" :class="{show: open}"> <a href="javascript:;" @click="storage.set('menu-4', open=!open)">列表</a> <ul> <li><a href="genres">类型</a></li> <li><a href="makers">制作人</a></li> <li><a href="actresses">女演员</a></li> <li><a href="series">系列</a></li> </ul> </li> <li class="has-child" v-scope="{open: storage.get('menu-2')}" :class="{show: open}"> <a href="javascript:;" @click="storage.set('menu-2', open=!open)">业余</a> <ul> <li><a href="dm1/tags/siro">SIRO</a></li> <li><a href="dm1/tags/259luxu">LUXU</a></li> <li><a href="dm1/tags/200gana">200GANA</a></li> <li><a href="dm1/tags/prestige-premium">PRESTIGE PREMIUM</a></li> <li><a href="dm1/tags/230oreco">ORECO</a></li> <li><a href="dm1/tags/s-cute">S-CUTE</a></li> <li><a href="dm1/tags/261ara">ARA</a></li> <li><a href="dm1/tags/390jac">390JAC</a></li> <li><a href="dm1/tags/328hmdn">328HMDN</a></li> </ul> </li> <li class="has-child" v-scope="{open: storage.get('menu-3')}" :class="{show: open}"> <a href="javascript:;" @click="storage.set('menu-3', open=!open)">未审查</a> <ul> <li><a href="dm1/uncensored-leaked">泄露未审查</a></li> <li><a href="dm1/tags/fc2">FC2</a></li> <li><a href="dm6/tags/heyzo">HEYZO</a></li> <li><a href="dm1/tags/tokyo-hot">Tokyo-Hot</a></li> <li><a href="dm19/tags/1pondo">1pondo</a></li> <li><a href="dm21/tags/caribbeancom">Caribbeancom</a></li> <li><a href="dm6/tags/caribbeancompr">Caribbeancompr</a></li> <li><a href="dm21/tags/10musume">10musume</a></li> <li><a href="dm4/tags/pacopacomama">pacopacomama</a></li> <li><a href="dm1/tags/gachig">Gachinco</a></li> <li><a href="dm1/tags/xxx-av">XXX-AV</a></li> <li><a href="dm1/tags/c0930">C0930</a></li> <li><a href="dm1/tags/h0930">H0930</a></li> <li><a href="dm1/tags/h4610">H4610</a></li> </ul> </li> <li class="has-child" v-scope="{open: storage.get('menu-5')}" :class="{show: open}"> <a href="javascript:;" @click="storage.set('menu-5', open=!open)">更多站点</a> <ul> <li><a href="https://theporndude.com" target="_blank" rel="nofollow">ThePornDude</a></li> </ul> </li> </ul> </div> <div class="col-auto right"> <form id="search" v-scope="Search()" @vue:mounted="init" ref="form" :class="{show: isOpen}" action="search" autocomplete="off"> <button><i class="fas fa-search"></i></button> <input type="text" name="keyword" ref="input" placeholder="搜索..."> </form> <div id="lang" v-scope="UI.Dropdown()" @vue:mounted="init"> <div ref="toggler"> <i class="flag icon-lang-zh"></i> </div> <div ref="menu" class="dropdown-menu dropdown-menu-right"> <a class="dropdown-item" href="https://njav.tv/en/ajax/v/240399/videos"> <i class="flag icon-lang-en"></i> <span>English</span> </a> <a class="dropdown-item" href="https://njav.tv/ja/ajax/v/240399/videos"> <i class="flag icon-lang-ja"></i> <span>日本語</span> </a> <a class="dropdown-item" href="https://njav.tv/ko/ajax/v/240399/videos"> <i class="flag icon-lang-ko"></i> <span>한국의</span> </a> <a class="dropdown-item" href="https://njav.tv/zh/ajax/v/240399/videos"> <i class="flag icon-lang-zh"></i> <span>繁體中文</span> </a> <a class="dropdown-item" href="https://njav.tv/ms/ajax/v/240399/videos"> <i class="flag icon-lang-ms"></i> <span>Melayu</span> </a> <a class="dropdown-item" href="https://njav.tv/th/ajax/v/240399/videos"> <i class="flag icon-lang-th"></i> <span>ไทย</span> </a> <a class="dropdown-item" href="https://njav.tv/de/ajax/v/240399/videos"> <i class="flag icon-lang-de"></i> <span>Deutsch</span> </a> <a class="dropdown-item" href="https://njav.tv/fr/ajax/v/240399/videos"> <i class="flag icon-lang-fr"></i> <span>Français</span> </a> <a class="dropdown-item" href="https://njav.tv/vi/ajax/v/240399/videos"> <i class="flag icon-lang-vi"></i> <span>Tiếng Việt</span> </a> <a class="dropdown-item" href="https://njav.tv/id/ajax/v/240399/videos"> <i class="flag icon-lang-id"></i> <span>Bahasa Indonesia</span> </a> <a class="dropdown-item" href="https://njav.tv/fil/ajax/v/240399/videos"> <i class="flag icon-lang-fil"></i> <span>Filipino</span> </a> <a class="dropdown-item" href="https://njav.tv/hi/ajax/v/240399/videos"> <i class="flag icon-lang-hi"></i> <span>हिंदी</span> </a> </div> </div> <div id="user"> <div class="clickable" v-if="!app.isUserLogged" @click.prevent="app.showLoginForm"> <i class="icon icon-avatar"></i> </div> <div v-if="!app.isUserStatusUpdating && app.isUserLogged" v-scope="UI.Dropdown()" @vue:mounted="init"> <div ref="toggler" class="clickable"> <i class="icon icon-avatar"></i> </div> <div ref="menu" class="dropdown-menu dropdown-menu-right"> <a class="dropdown-item" href="#" @click.prevent="app.userFormName = 'edit'; UI.showModal('#userform')"> <i class="fas fa-user-edit"></i> <span>编辑个人资料</span> </a> <a class="dropdown-item" href="user/collection"> <i class="fas fa-heart"></i> <span>我的收藏</span> </a> <a class="dropdown-item" href="user/actresses"> <i class="fas fa-star"></i> <span>我的女演员</span> </a> <a class="dropdown-item" href="user/feed"> <i class="fas fa-film"></i> <span>视频源</span> </a> <a class="dropdown-item" href="user/logout"> <i class="fas fa-sign-out-alt"></i> <span>退出登录</span> </a> </div> </div> </div> <div class="nav-toggler" @click="app.toggleMenu"> <i></i><i></i><i></i> </div> </div> </div> </div> </header> <div id="body"> <div class="text-center align-content-center" style="margin: 0 auto; max-width: 600px;"> <h1>njav.tv -> 123AV.com</h1> <h3><a rel="nofollow" class="btn btn-primary" href="https://123av.com/zh/ajax/v/240399/videos">Click here to continue</a></h3> <p>We've changed our domain to 123av.com, please remember the new domain and update your bookmark.</p> <p>Best Japan AV porn site, free forever, high speed, no lag, over 100,000 videos, daily update, no ads while playing video.</p> <p>オンラインで無料ハイビジョンAV映画を、ダウンロード不要で飽きるまで存分に見られます、遅滞なく高速再生、10万本以上の動画、毎日更新、動画の再生中に広告が表示されない、シリアル番号、女優、またはシリーズ名で動画を検索できます。</p> </div> </div> <footer> <div class="text-center mb-5"> <div class="gotop" @click="goTop"> <i class="far fa-arrow-alt-circle-up"></i> </div> </div> <div class="container"> <div class="row"> <div class="col-lg-8 order-2 order-lg-1"> <div class="fw-bold fs-20 logo mb-2"> <img src="https://njav.tv/assets/123av/images/logo.png?v=123av" /> </div> <div>Copyright © 2025 njav.tv All rights reserved</div> </div> <div class="col-lg-4 order-1"> <div class="row"> <div class="col-4 links"> <div class="bl-title">关于</div> <ul> <li><a href="contact">联系</a></li> </ul> </div> <div class="col-4 links"> <div class="bl-title">政策</div> <ul> <li><a href="2257">18 U.S.C. 2257</a></li> <li><a href="terms">条款</a></li> <li><a href="abuse">滥用</a></li> </ul> </div> <div class="col-4 links"> <div class="bl-title">Friends</div> <ul> <li><a href="https://javgg.net/" target="_blank">javgg.net</a></li> <li><a href="dm2/missav">MissAV</a></li> <li><a href="supjav">SupJav</a></li> <li><a href="jable">Jable</a></li> <li><a href="javguru">Jav.guru</a></li> </ul> </div> </div> </div> </div> </div> </footer> <div class="modal" id="userform" style="display: none"> <div class="modal-dialog modal-dialog-centered modal-sm"> <div v-show="app.userFormName == 'login'" class="modal-content"> <form v-scope="Form({ url: 'ajax/user/signin', whenDone: function() { UI.hideModal(); app.updateUserInfo(); } })" @vue:mounted="init" ref="form" autocomplete="off"> <div class="modal-header"> <div class="flex-fill"> <h3 class="modal-title">登录</h3> <div>or <a href="#" @click.prevent="app.userFormName = 'register'">注册账号</a></div> </div> <button type="button" class="close" @click="UI.hideModal"><span>×</span></button> </div> <div class="modal-body"> <div class="text-center"> <div class="spinner-border text-primary" ref="loader"></div> </div> <div v-if="messages.length" class="alert" :class="{'alert-info': !hasErrors, 'alert-danger': hasErrors}"> <div v-for="message in messages">{{ message }}</div> </div> <div class="form-group merge"> <label for="login_username">用户名</label> <input class="form-control" id="login_username" type="text" name="username" required :class="{'is-invalid': !!errors.username}"> <small class="text-danger" v-if="errors.username">{{ errors.username }}</small> </div> <div class="form-group merge last"> <label for="login_password">密码</label> <input class="form-control" id="login_password" type="password" name="password" required :class="{'is-invalid': !!errors.password}"> <small class="text-danger" v-if="errors.password">{{ errors.password }}</small> </div> <div class="form-group form-check d-flex justify-content-between"> <div> <input type="checkbox" class="form-check-input" name="remember_me" id="remember_me" checked> <label class="form-check-label" for="remember_me">记住我</label> </div> </div> <div class="text-center mt-3"> <a href="#" class="text-primary" @click.prevent="app.userFormName = 'reset'">重置您的密码</a> </div> </div> <div class="modal-footer justify-content-center"> <button type="submit" class="btn btn-primary btn-lg w-100" :disabled="isLoading">提交</button> </div> </form> </div> <div v-show="app.userFormName == 'register'" class="modal-content"> <form v-scope="Form({ url: 'ajax/user/signup', whenDone: function() { UI.hideModal(); app.updateUserInfo(); this.$refs.form.reset(); } })" @vue:mounted="init" ref="form" autocomplete="off"> <div class="modal-header"> <div class="flex-fill"> <h3 class="modal-title">注册账号</h3> <div>or <a href="#" @click.prevent="app.userFormName = 'login'">登录到您的账户</a></div> </div> <button type="button" class="close" @click="UI.hideModal"><span>×</span></button> </div> <div class="modal-body"> <div class="text-center"> <div class="spinner-border text-primary" ref="loader"></div> </div> <div v-if="messages.length" class="alert" :class="{'alert-info': !hasErrors, 'alert-danger': hasErrors}"> <div v-for="message in messages">{{ message }}</div> </div> <div class="form-group merge"> <label for="register_username">用户名</label> <input class="form-control" id="register_username" type="text" name="username" required minlength="4" maxlength="32" :class="{'is-invalid': !!errors.username}"> <small class="text-danger" v-if="errors.username">{{ errors.username }}</small> </div> <div class="form-group merge last"> <label for="register_email">电子邮件</label> <input class="form-control" id="register_email" type="text" name="email" required minlength="4" maxlength="32" :class="{'is-invalid': !!errors.email}"> <small class="text-danger" v-if="errors.email">{{ errors.email }}</small> </div> <div class="form-group merge first"> <label for="register_password">密码</label> <input class="form-control" id="register_password" type="password" name="password" required minlength="4" maxlength="32" :class="{'is-invalid': !!errors.password}"> <small class="text-danger" v-if="errors.password">{{ errors.password }}</small> </div> <div class="form-group merge last"> <label for="register_password_confirmation">确认密码</label> <input class="form-control" id="register_password_confirmation" type="password" name="password_confirmation" required minlength="4" maxlength="32" :class="{'is-invalid': !!errors.password_confirmation}"> <small class="text-danger" v-if="errors.password_confirmation">{{ errors.password_confirmation }}</small> </div> </div> <div class="modal-footer justify-content-center"> <button type="submit" class="btn btn-primary btn-lg w-100">提交</button> </div> </form> </div> <div v-show="app.userFormName == 'reset'" class="modal-content"> <form v-scope="Form({url: 'ajax/user/reset'})" @vue:mounted="init" ref="form" autocomplete="off"> <div class="modal-header"> <div class="flex-fill"> <h3 class="modal-title">重置您的密码</h3> <div>or <a href="#" @click.prevent="app.userFormName = 'login'">登录到您的账户</a></div> <div>请提供您当前的用户名和电子邮件,以重置您的密码.</div> </div> <button type="button" class="close" @click="UI.hideModal"><span>×</span></button> </div> <div class="modal-body"> <div class="text-center"> <div class="spinner-border text-primary" ref="loader"></div> </div> <div v-if="messages.length" class="alert" :class="{'alert-info': !hasErrors, 'alert-danger': hasErrors}"> <div v-for="message in messages">{{ message }}</div> </div> <div class="form-group merge first"> <label>用户名</label> <input class="form-control" type="text" name="username" required minlength="4" maxlength="32" :class="{'is-invalid': !!errors.username}"> <small class="text-danger" v-if="errors.username">{{ errors.username }}</small> </div> <div class="form-group merge last"> <label>电子邮件</label> <input class="form-control" type="text" name="email" required minlength="4" maxlength="32" :class="{'is-invalid': !!errors.email}"> <small class="text-danger" v-if="errors.email">{{ errors.email }}</small> </div> <div class="form-group merge first"> <label for="reset_password">新密码</label> <input class="form-control" id="reset_password" type="password" name="password" minlength="4" maxlength="32" :class="{'is-invalid': !!errors.password}"> <small class="text-danger" v-if="errors.password">{{ errors.password }}</small> </div> <div class="form-group merge last"> <label for="reset_password_confirmation">确认新密码</label> <input class="form-control" id="reset_password_confirmation" type="password" name="password_confirmation" minlength="4" maxlength="32" :class="{'is-invalid': !!errors.password_confirmation}"> <small class="text-danger" v-if="errors.password_confirmation">{{ errors.password_confirmation }}</small> </div> </div> <div class="modal-footer justify-content-center"> <button type="submit" class="btn btn-primary btn-lg w-100">提交</button> </div> </form> </div> <div v-show="app.userFormName == 'edit'" class="modal-content"> <form v-scope="Form({url: 'ajax/user/edit', whenDone: app.updateUserInfo})" @vue:mounted="init" ref="form" autocomplete="off"> <div class="modal-header"> <div class="flex-fill"> <h3 class="modal-title">编辑个人资料</h3> </div> <button type="button" class="close" @click="UI.hideModal"><span>×</span></button> </div> <div class="modal-body"> <div class="text-center"> <div class="spinner-border text-primary" ref="loader"></div> </div> <div v-if="messages.length" class="alert" :class="{'alert-info': !hasErrors, 'alert-danger': hasErrors}"> <div v-for="message in messages">{{ message }}</div> </div> <div class="form-group merge"> <label for="edit_username">用户名</label> <input class="form-control" id="edit_username" type="text" name="username" required minlength="4" maxlength="32" :value="app.userInfo.username" :class="{'is-invalid': !!errors.username}"> <small class="text-danger" v-if="errors.username">{{ errors.username }}</small> </div> <div class="form-group merge last"> <label for="edit_email">电子邮件</label> <input class="form-control" id="edit_email" type="email" name="email" required minlength="4" maxlength="32" :value="app.userInfo.email" :class="{'is-invalid': !!errors.email}"> <small class="text-danger" v-if="errors.email">{{ errors.email }}</small> </div> <div v-scope="{changePassword: false}"> <div class="text-center"> <a href="javascript:;" class="text-info" @click.prevent="changePassword = !changePassword">更改密码</a> </div> <div v-if="changePassword" class="mt-3"> <div class="form-group merge"> <label for="edit_password">新密码</label> <input class="form-control" id="edit_password" type="password" name="password" minlength="4" maxlength="32" :class="{'is-invalid': !!errors.password}"> <small class="text-danger" v-if="errors.password">{{ errors.password }}</small> </div> <div class="form-group merge last"> <label for="edit_password_confirmation">确认新密码</label> <input class="form-control" id="edit_password_confirmation" type="password" name="password_confirmation" minlength="4" maxlength="32" :class="{'is-invalid': !!errors.password_confirmation}"> <small class="text-danger" v-if="errors.password_confirmation">{{ errors.password_confirmation }}</small> </div> </div> </div> </div> <div class="modal-footer justify-content-center"> <button type="submit" class="btn btn-primary btn-lg w-100">提交</button> </div> </form> </div> </div> </div> </div> <script async src="https://www.googletagmanager.com/gtag/js?id=G-VZGC2QQBZ8"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-VZGC2QQBZ8'); </script> <script> if(window.innerWidth >= 1024) { document.write("<script type='text/javascript' src='//effectscouncilman.com/24/5d/45/245d45a321faaf58150e2b1fe830f4bf.js' defer><\/script>"); } </script> <div class="ad-floating"> <div class="d-none d-lg-block" v-if="isDesktop"> <div style="width:300px;height:150px;display:block;overflow:hidden;margin: 0 auto;"> </div> </div> <div class="d-lg-none" v-if="!isDesktop"> <div style="width:300px;height:50px;display:block;overflow:hidden;margin: 0 auto;"> </div> </div> </div> </body> </html>