64 lines
4.3 KiB
Vue
64 lines
4.3 KiB
Vue
<script setup lang="ts">
|
||
import { onMounted, ref } from 'vue'
|
||
import AsideSponsors from './AsideSponsors.vue'
|
||
|
||
|
||
const showTemp = ref(false)
|
||
|
||
// function called if wwads is blocked
|
||
function ABDetected() {
|
||
const wwadsElement = document.getElementsByClassName("aside-temp")[0]
|
||
if (wwadsElement) {
|
||
wwadsElement.insertAdjacentHTML("beforeend", "<style>.wwads-horizontal,.wwads-vertical{background-color:#f4f8fa;padding:5px;min-height:120px;margin-top:20px;box-sizing:border-box;border-radius:3px;font-family:sans-serif;display:flex;min-width:150px;position:relative;overflow:hidden;}.wwads-horizontal{flex-wrap:wrap;justify-content:center}.wwads-vertical{flex-direction:column;align-items:center;padding-bottom:32px}.wwads-horizontal a,.wwads-vertical a{text-decoration:none}.wwads-horizontal .wwads-img,.wwads-vertical .wwads-img{margin:5px}.wwads-horizontal .wwads-content,.wwads-vertical .wwads-content{margin:5px}.wwads-horizontal .wwads-content{flex:130px}.wwads-vertical .wwads-content{margin-top:10px}.wwads-horizontal .wwads-text,.wwads-content .wwads-text{font-size:14px;line-height:1.4;color:#0e1011;-webkit-font-smoothing:antialiased}.wwads-horizontal .wwads-poweredby,.wwads-vertical .wwads-poweredby{display:block;font-size:11px;color:#a6b7bf;margin-top:1em}.wwads-vertical .wwads-poweredby{position:absolute;left:10px;bottom:10px}.wwads-horizontal .wwads-poweredby span,.wwads-vertical .wwads-poweredby span{transition:all 0.2s ease-in-out;margin-left:-1em}.wwads-horizontal .wwads-poweredby span:first-child,.wwads-vertical .wwads-poweredby span:first-child{opacity:0}.wwads-horizontal:hover .wwads-poweredby span,.wwads-vertical:hover .wwads-poweredby span{opacity:1;margin-left:0}.wwads-horizontal .wwads-hide,.wwads-vertical .wwads-hide{position:absolute;right:-23px;bottom:-23px;width:46px;height:46px;border-radius:23px;transition:all 0.3s ease-in-out;cursor:pointer;}.wwads-horizontal .wwads-hide:hover,.wwads-vertical .wwads-hide:hover{background:rgb(0 0 0 /0.05)}.wwads-horizontal .wwads-hide svg,.wwads-vertical .wwads-hide svg{position:absolute;left:10px;top:10px;fill:#a6b7bf}.wwads-horizontal .wwads-hide:hover svg,.wwads-vertical .wwads-hide:hover svg{fill:#3E4546}</style><a href='https://wwads.cn/page/whitelist-wwads' class='wwads-img' target='_blank' rel='nofollow'><img src='https://creatives-1301677708.file.myqcloud.com/images/placeholder/wwads-friendly-ads.png' width='130'></a><div class='wwads-content'><a href='https://wwads.cn/page/whitelist-wwads' class='wwads-text' target='_blank' rel='nofollow'>为了本站的长期运营,请将我们的网站加入广告拦截器的白名单,感谢您的支持!</a><a href='https://wwads.cn/page/end-user-privacy' class='wwads-poweredby' title='万维广告 ~ 让广告更优雅,且有用' target='_blank'><span>万维</span><span>广告</span></a></div><a class='wwads-hide' onclick='parentNode.remove()' title='隐藏广告'><svg xmlns='http://www.w3.org/2000/svg' width='6' height='7'><path d='M.879.672L3 2.793 5.121.672a.5.5 0 11.707.707L3.708 3.5l2.12 2.121a.5.5 0 11-.707.707l-2.12-2.12-2.122 2.12a.5.5 0 11-.707-.707l2.121-2.12L.172 1.378A.5.5 0 01.879.672z'></path></svg></a>")
|
||
}
|
||
}
|
||
|
||
// check document ready
|
||
function docReady(callback: () => void) {
|
||
if (document.readyState === "complete" || document.readyState === "interactive") {
|
||
setTimeout(callback, 1)
|
||
} else {
|
||
document.addEventListener("DOMContentLoaded", callback)
|
||
}
|
||
}
|
||
|
||
onMounted(() => {
|
||
const s = document.createElement('script')
|
||
s.type = 'text/javascript'
|
||
s.src = `https://cdn.wwads.cn/js/makemoney.js`
|
||
document.querySelector('.wwads-container')!.appendChild(s)
|
||
|
||
// check if wwads' fire function was blocked after document is ready with 3s timeout (waiting the ad loading)
|
||
docReady(() => {
|
||
setTimeout(() => {
|
||
if ((window as any)._AdBlockInit === undefined) {
|
||
showTemp.value = true
|
||
ABDetected()
|
||
}
|
||
}, 3000)
|
||
})
|
||
})
|
||
</script>
|
||
|
||
<template>
|
||
<AsideSponsors></AsideSponsors>
|
||
<div class="wwads-container" v-if="!showTemp">
|
||
<div class="wwads-cn wwads-vertical" data-id="372"></div>
|
||
</div>
|
||
<div class="aside-temp wwads-vertical" v-if="showTemp"></div>
|
||
</template>
|
||
|
||
<style>
|
||
.wwads-container, .aside-temp {
|
||
padding: 1px 15px 10px;
|
||
margin-top: 20px;
|
||
background-color: var(--vt-c-bg-soft);
|
||
}
|
||
.wwads-vertical {
|
||
background-color: transparent !important;
|
||
}
|
||
.wwads-text {
|
||
color: var(--vt-c-text-2) !important;
|
||
}
|
||
</style>
|