كيفية الاشتراك في نظام التشغيل Windows Media Player الأحداث دون استخدام إضافية النصي علامة ؟
-
21-12-2019 - |
سؤال
أنا تضمين ويندوز ميديا بلاير التحكم في صفحة HTML.
<object width="720"
height="480"
id="Player"
classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
<!-- <param> tags left out -->
</object>
للاشتراك في الأحداث من التحكم (على سبيل المثال PlayStateChange(newState)
) ، إضافة <script>
الوسم ، مثل ما يلي:
<script language="JScript" for="Player" event="PlayStateChange(newState)">
var newStateText = document.createTextNode('' + newState);
var playStateContainer = document.getElementById('PlayState');
while (playStateContainer.firstChild) {
playStateContainer.removeChild(playStateContainer.firstChild);
}
playStateContainer.appendChild(newStateText);
</script>
ليس هناك طريقة الاشتراك في هذه الفعالية من خلال جافا سكريبت عادي (دون إضافية <script>
الوسم على كل حال أنا مهتم في كل مثيل واحد من سيطرة)?
مع 5 حالات من السيطرة على 5 أحداث أريد أيضا نؤيد هذا سيكون 25 علامات البرنامج النصي.لذا هي ملفوفة في بعض المكتبات البرمجية في ملف جافا سكريبت خارجي.حالة معالجة رمز يجب أن يكون هناك أيضا وليس في HTML من تطبيق العميل.
المحلول
وفقا هذه المقالة MSDN (انظر الأقسام اصطلاحات التسمية و Automagic) ، يمكنك كتابة كل ما تبذلونه من معالجات الأحداث داخل نفس <script>
الوسم ، شريطة أن اسم وظائف objectname::eventname
أو objectname.eventname
:
<script language="JScript">
function Player::playStateChange(newState) {
...
}
function Player.currentPlaylistChange(change) {
...
}
</script>
لم أحاول هذا على الرغم من.وبالطبع هذا كله أي محددة.