تتبُّع نقرات الماوس
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
عند استخدام أداة تطوير البرامج لإعلانات الوسائط التفاعلية، يكون هناك مشغّلَا فيديو منفصلَين، مشغّل
الفيديو الخاص بالمحتوى ومشغّل الإعلانات. تدير حزمة تطوير البرامج (SDK) تلقائيًا عملية تراكب مشغّل الإعلانات فوق مشغّل فيديو المحتوى. نتيجةً لذلك، لا تعمل إضافة مستمعي الأحداث إلى
مشغّل الفيديو مباشرةً. ومن بين الحلول البديلة عرض حاوية الإعلان ونقلها، ولكن يمكن أن يتداخل ذلك مع وظيفة حزمة SDK. إنّ الحلّ الأفضل هو
لفّ كلا اللاعبين في div
رئيسي وإرفاق أدوات معالجة الأحداث به.
يوضّح لك هذا الدليل كيفية إجراء ذلك.
المتطلبات الأساسية
تعديل رمز HTML
عليك أولاً تغيير رمز HTML لإضافة div
يحيط بكل من
مشغّل الإعلان ومشغّل فيديو المحتوى. في قسم *إعداد حزمة تطوير البرامج لإعلانات الوسائط التفاعلية (IMA SDK)*، تمّت
بنجاح هذه العملية باستخدام mainContainer
:
...
<div id="mainContainer">
<div id="content">
<video id="contentElement">
<source src="https://storage.googleapis.com/gvabox/media/samples/stock.mp4">
</video>
</div>
<div id="adContainer"></div>
</div>
...
إضافة أدوات معالجة الأحداث إلى JavaScript
بعد ذلك، أضِف أدوات الاستماع إلى الأحداث إلى رمز JavaScript، مثلاً لرصد
نقرات المستخدم على الفيديو. على سبيل المثال، في ads.js
:
...
function init() {
videoContent = document.getElementById('contentElement');
mainContainer = document.getElementById('mainContainer');
mainContainer.addEventListener('click', function() { alert('I was clicked!');});
...
}
...
هذا كل شيء! يمكنك النقر على الفيديو ورؤية النافذة المنبثقة تظهر بغض النظر عمّا إذا كان يتم عرض إعلان أم لا، وسيظلّ بإمكانك النقر على الإعلانات.
جرّبه الآن
يمكنك الاطّلاع أدناه على مثال لعملية تنفيذ ناجحة.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThe IMA SDK uses two separate video players: one for content and one for ads, which it automatically overlays.\u003c/p\u003e\n"],["\u003cp\u003eDirectly adding event listeners to the content video player is ineffective due to the ad overlay.\u003c/p\u003e\n"],["\u003cp\u003eWrap both video players in a parent \u003ccode\u003ediv\u003c/code\u003e and attach event listeners to that parent element for proper functionality.\u003c/p\u003e\n"],["\u003cp\u003eThis method enables event handling (like click detection) on the video, irrespective of ad playback, while preserving ad click-throughs.\u003c/p\u003e\n"]]],[],null,["# Track mouse clicks\n\nWhen using the IMA SDK, there are two separate video players, your content\nvideo player and the ad player. The SDK automatically manages overlaying the ad\nplayer over the content video player. As a result, adding event listeners to the\nvideo player directly does not work. One workaround is to show and hide the ad\ncontainer, but this can interfere with SDK functionality. A better solution is to\nwrap both players in a parent `div` and attach event listeners to that.\nThis guide shows you how.\n\nPrerequisites\n-------------\n\n- HTML5 video player with the IMA HTML5 SDK integrated. If you don't have one, check out [Set up the IMA SDK](/interactive-media-ads/docs/sdks/html5/client-side).\n\nModify your HTML\n----------------\n\nFirst you need to change your HTML to add a `div` wrapping both\nthe ad player and content video player. In \\*Set up the IMA SDK\\*, this is already\ndone for you with `mainContainer`: \n\n```text\n...\n\u003cdiv id=\"mainContainer\"\u003e\n \u003cdiv id=\"content\"\u003e\n \u003cvideo id=\"contentElement\"\u003e\n \u003csource src=\"https://storage.googleapis.com/gvabox/media/samples/stock.mp4\"\u003e\n \u003c/video\u003e\n \u003c/div\u003e\n\n \u003cdiv id=\"adContainer\"\u003e\u003c/div\u003e\n\u003c/div\u003e\n...\n```\n\nAdd event listeners to your JavaScript\n--------------------------------------\n\nNext, add event listeners to your JavaScript code, such as to detect a\nuser clicking on the video. For example, in `ads.js`: \n\n```text\n...\nfunction init() {\n videoContent = document.getElementById('contentElement');\n mainContainer = document.getElementById('mainContainer');\n mainContainer.addEventListener('click', function() { alert('I was clicked!');});\n ...\n}\n...\n```\n\n\u003cbr /\u003e\n\nThat's it! You can click on the video and see the pop-up appear regardless of\nwhether an ad is playing and still have ad click-throughs work.\n\nTry it out\n----------\n\nYou can see a working implementation below.\nSee the Pen \\\u003ca href='http://codepen.io/imasdk/pen/gPYzYO/'\\\u003egPYzYO\\\u003c/a\\\u003e by IMA SDK (\\\u003ca href='http://codepen.io/imasdk'\\\u003e@imasdk\\\u003c/a\\\u003e) on \\\u003ca href='http://codepen.io'\\\u003eCodePen\\\u003c/a\\\u003e."]]