Şu anda çevrimdışısınız; İnternet'in yeniden bağlanması bekleniyor

HTML sayfasındaki DOM nesnelerine döngüsel başvurular bellek sızıntısına neden oluyor (Bu bağlantı, bir kısmı veya tamamı İngilizce olan içeriğe işaret edebilir.)

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

Makalenin İngilizcesi aşağıdaki gibidir:830555
Kullanım Dışı Bilgi Bankası İçeriği Yasal Uyarı
Bu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.
Belirtiler
Döngüsel başvurular için <a1>Nesneler</a1>'de Microsoft ınternet Explorer belge nesne modeli (DOM) içeren Microsoft JScript koddan kullanan bir HTML sayfasını yenilediğinizde, bellek sızıntısı oluşuyor.
Neden
DOM nesnelerine olmayan JScript nesneleri olduğundan, bu bellek sızıntısı oluşur. DOM nesnelerine JScript işareti ve silme çöp toplama düzeninde değildir. Tarayıcı, sayfa aşağı tamamen çıkarır kadar bu nedenle, Döngüsel başvuruyu DOM nesnelerine JScript işleyicileri arasındaki bozuk olur. Tarayıcıyı yeni bir Web sayfası veya tarayıcı penceresi kapatıldığında açıldığında, bu bellek sızıntısı sona erdirir.
Çözüm
Bu sorunu gidermek için <a0></a0>, JScript kodunuzun ınternet Explorer DOM nesnelerine döngüsel başvurular kaçının. Bu makalenin "Daha fazla bilgi" bölümünde bulunan örnek kod, bu soruna geçici bir çözüm bulmak için <a0></a0>, aşağıdaki değişiklik:
function hookup(element){    element.attachEvent( "onmouseover", mouse);}function mouse () {}
bu değişiklik ile Fare işlevi, döngüsel başvuru müşteri adayları bir kapanış nesnesi değil.
Durum
Microsoft bu durumun, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bir hata olduğunu onaylamıştır.
Daha fazla bilgi

Davranışı Yeniden Oluşturma Adımları

  1. Not Defteri'nde aşağıdaki kodu yapıştırın ve dosyayı test.htm kaydedin:
    <HTML><HEAD><script language="javascript">function initpage(){window.setTimeout("window.location.reload()", 500, "javascript");}</script></HEAD><body onload="initpage()" ><div class='menu' id='menu'></div><script language='javascript'>hookup(document.getElementById('menu'));function hookup(element){element.attachEvent( "onmouseover", mouse);	function mouse () 	{	}}</script></body></HTML>
    Bu kodu, (Fare işlevi) işleyicisi attacher (hookup işlevi) içinde yer alan. Bu düzenleme, işleyici (Bu düzenleme "Kapanışın" olarak adlandırılmıştır) arayanın kapsamı üzerinde kapalı olduğunu gösterir. Işleyicinin değişken öğesine başvuru korur. Bu durumda, değişken div HTML öğesi, menüKIMLIĞI parametresi öğedir. Ancak, işleyiciye div öğesini gösterir. Bu başvuru bir döngüsel başvurudur.
  2. Test.htm ınternet Explorer'ı açın.

    Bellek kullanımı, Windows Görev Yöneticisi'nde her sayfanın kendisini yeniler artırmanın devam dikkat edin.
Referanslar
ınternet Explorer sızıntısı desenleri hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 830555 - Son İnceleme: 11/02/2007 06:47:16 - Düzeltme: 3.4

Microsoft Internet Explorer (Programming) 6.0, Microsoft Internet Explorer 5.5, Microsoft Internet Explorer 5.01

  • kbmt kbfix kbbug KB830555 KbMttr
Geri bildirim