บทความนี้ส่วนใหญ่แนะนำวิธีการใหม่ของการโฆษณาหลังการสนับสนุนโฆษณา HTML ที่กำหนดเองโฆษณาพันธมิตร Baidu และโฆษณาพันธมิตรของ Google วิธีนี้จะดำเนินการหลังจากโหลดหน้าเว็บและไม่ส่งผลกระทบต่อการแสดงเนื้อหาและใช้งานง่ายกว่า
วิธีที่ง่ายที่สุดสำหรับเราในการวางโฆษณาบนเว็บไซต์คือการแทรกรหัส JS ลงในตำแหน่งที่ระบุ สิ่งนี้มีผลที่ตามมาว่าหน้าจะถูกโหลดตามลำดับ บางครั้งรหัสโฆษณาติดอยู่และทั้งหน้าจะติดอยู่ซึ่งนำประสบการณ์ที่แย่มากมาสู่ผู้ใช้
แล้วจะแก้ปัญหานี้ได้อย่างไร? มาพูดถึงหลักการก่อน ขอจองสถานที่บางตัวในหน้าของเรา เพื่อไม่ให้ส่งผลกระทบต่อการโหลดเนื้อหาของหน้าเราแนะนำการประมวลผล JS ที่ด้านล่างของหน้าและแทนที่ตัวยึดตำแหน่งด้วยโฆษณาที่สอดคล้องกันทีละตัว
มาดูขั้นตอนการใช้งานเฉพาะด้านล่าง:
1. วางตำแหน่งตัวยึดไว้บนหน้าซึ่งจริง ๆ แล้วเป็นเครื่องหมายช่วง
การคัดลอกรหัสมีดังนี้:
<span id = "ads_one"> </span>
<span id = "ads_two"> </span>
<span id = "ads_three"> </span>
2. เขียนรหัสสคริปต์ JS อิสระ: jbloader.js
การคัดลอกรหัสมีดังนี้:
jbmap = window.jbmap || -
ฟังก์ชั่น jbviajs (locationId) {
var _f = ไม่ได้กำหนด;
var _fconv = 'jbmap [/"' + locationId + '/"]';
พยายาม {
_f = eval (_fconv);
if (_f! = undefined) {
_f ()
-
} catch (e) {}
-
ฟังก์ชั่น jbloader (closetag) {
var jbtest = null
JBTESTPOS = Document.getElementsByTagname ("Span");
สำหรับ (var i = 0; i <jbtestpos.length; i ++) {
if (jbtestpos [i] .classname == "jbtestpos") {
JBTEST = JBTESTPOS [i];
หยุดพัก
-
-
ถ้า (jbtest == null) กลับ;
ถ้า (! Closetag) {
document.write ("<span id = jbtestpos_" + jbtest.id + "style = display: none>");
jbviajs (jbtest.id);
กลับ
-
document.write ("</span>");
var real = document.getElementById ("jbtestpos_" + jbtest.id);
สำหรับ (var i = 0; i <real.childnodes.length; i ++) {
var node = real.childnodes [i];
if (node.tagname == "script" && /closetag/.test(node.classname)) ดำเนินการต่อ;
jbtest.parentnode.insertbefore (โหนด, jbtest);
ฉัน--
-
jbtest.parentnode.removeChild (JBTEST);
real.parentNode.removeChild (ของจริง)
-
jbmap ['ads_one'] = function () {
document.writeln ('<a href = "// www.vevb.com/" target = "_ blank"> wulin.com </a>');
-
jbmap ['ads_two'] = function () {
document.writeln ('<scr'+'ipt type = "text/javascript"> var cpro_id = "u336546"; </script> <script src = "http://cpro.baidustatic.com/cpro/ui/c.js
-
jbmap ['ads_three'] = function () {
document.writeLn ('<scri'+'pt async src = "// pagead2.googleyndication.com/pagead/js/adsbygoogle.js"></scri'+'pt> สไตล์ =" แสดง: inline-block; ความกว้าง: 300px; data-ad-client = "ca-pub-1247620132145618" data-ad-slot = "2253650178" data-override-format = "true" data-page-url = "// www.vevb.com []). push ({}); </s '+' สคริปต์> ');
-
หมายเหตุ: JBMAP เป็นอาร์เรย์ที่วางโฆษณา คีย์ของอาร์เรย์และสแปน ID ID นั้นสอดคล้องกับพวกเขา เราสามารถเพิ่มโฆษณาของเราเองในรูปแบบนี้ใน JS นี้ วิธีการโหลดโฆษณานี้รองรับการโฆษณา HTML ที่กำหนดเองการโฆษณาพันธมิตร Baidu และการโฆษณาพันธมิตรของ Google ที่นี่เราได้แสดงให้เห็นแล้ว
3. แนะนำ JS ที่ด้านล่างของหน้าและโทรหา jbloader เพื่อโหลดโฆษณา
การคัดลอกรหัสมีดังนี้:
<script type = "text/javascript" src = 'js/jbloader.js'> </script>
<script> jbloader (); </script> <script> jbloader (true); </script>
<script> jbloader (); </script> <script> jbloader (true); </script>
<script> jbloader (); </script> <script> jbloader (true); </script>
หมายเหตุ: รูปแบบจะต้องเป็นรูปแบบดังกล่าวข้างต้น หากมีตัวยึดสถานที่หลายตัวให้เพิ่ม <script> jbloader (); </script> <script> jbloader (จริง); </script>
อย่าถามบรรณาธิการว่าทำไมเขาถึงเรียกวิธีนี้ อันที่จริงฉันได้ศึกษาด้วย:
1. ครั้งแรกที่ jbloader () คือการเขียนแท็กและครั้งที่สอง jbloader (จริง) คือการแทนที่แท็ก
2. ใช้สอง <cript> s เพื่อรับองค์ประกอบที่เกี่ยวข้องในการโทรครั้งที่สอง
3. เขียนสคริปต์สองสามบรรทัดเมื่อมีตัวยึดหลายตัวเพื่อหลีกเลี่ยงการส่งผลกระทบต่อกันและกันและแสดงแยกต่างหาก
กล่าวโดยย่อ: เว็บไซต์สำคัญหลายแห่งกำลังใช้วิธีนี้เพื่อให้ทุกคนสามารถใช้มันได้อย่างมั่นใจ ณ จุดนี้การโทรเพื่อโหลดหลังจากโฆษณาหน้าเสร็จสมบูรณ์