OW Debug - Notice
Message: Trying to access array offset on value of type null
File: /home/romarekl/public_html/sosyallift.com/ow_plugins/forum/controllers/topic.php
Line: 136
Siteye Background Müziği Ekleme Forum | Sosyallift©
Loading...
 
tr
Whordark
Whordark Ağustos 8 '15

Çok basit olduğunu düşünmeme rağmen gereksiz yere vakit harcadığım bir konu. Tek istediğim yapmış olduğum HTML kodlarından oluşan bir sitenin arkaplanına müzik eklemekti. Ki bana sorarsanız sitede arkaplanda çalan müzik çok gereksiz, ama istek doğrultusunda yapmak zorunda kaldım. Neyse, gelelim konumuza:

İlk önce en basitinden başlamıştım. <bgsound src=….> ve versiyonlarını denemiştim. Ancak öğrendim ki “bgsound” sadece İnternet Explorer’da geçerliymiş, diğerlerinde etkisiz. Bunun dışında object oluşturup yapan, kendince özellikler ekleyen karman çorman bir sürü kodlar vardı, ancak ben basit bir şey istemiştim; gözükmeyen ve arkaplanda durmadan çalan bir müzik. Öğrendim ki hepsinde geçerli olması için embed kullanımı uygunmuş. Sonra da şu kodu denedim:

<embed src=”http://sitenizinadi.com/muziginadi.mid&rdquo; loop=”true” hidden=”true”></embed>

(Bu arada arkaplan için mp3 uzantılı dosyalar denemeyin, çünkü sitenin açılışı uzun sürer. mid uzantısı ideal bence ama mid insan sesi içermiyor, ona göre.)

Evet bu kodu denedim ve hepsinde olmuştu gerçekten de. Her şey istediğim gibi olduğunu düşünüp sevinmiştim, taa ki herhangi bir linke tıklayana kadar. Tıklayınca müzik durdu ve şaşırdım ben de. Bu kodu index’e gömdüğüm için doğal olarak sadece index’teyken çalıyordu. Ben de niye şaşırdıysam?! Sonra da şu şekilde sorunu çözdüm.

“muzik.html” olarak şu kodu kaydettim:

<embed src=”http://sitenizinadi.com/muziginadi.mid&rdquo; loop=”true” hidden=”true”></embed>

Sonra da index’imde sadece frameset oluşturdum. Framesetimde iki tane frame olacak, biri bu muzik.html, diğeri de kendi index sayfam(real_index.php). Siteye girince açılacak olan index sayfamın(index.html, index.php veya başka biri) kodu şu şekilde olacak:
<html>
<frameset framespacing=”0″ border=”0″ frameborder=”0″ rows=”0,*”>
<frame name=”Navigationsframe” target=”Hauptframe” src=”muzik.html”>
<frame name=”Hauptframe” src=”real_index.php”>
</frameset>
</html>
Ve sorun halloldu.

Framset’ten de biraz bahsedelim. Frameset’ler birbirinden bağımsız birden çok internet sayfalarını aynı yerde göstermek için kullanılır. Head ve body taglarini kullandığımız normal bir html kodunda, framesetin yeri head’i kapattıktan sonra ve body tagini açmadan önce (</head> ve <body> tag’leri arasında) olmalıdır. Ancak head ve body tag’lerimiz olmadığından dolayı bizim için sorun yok.
Frameset içerisindeki border, framespacing ve frameborder görsellik için kullanılan özellikler(ki html hakkında biraz bilginiz varsa zaten ne yaptıklarını çıkartırsınız. Ya da biraz ingilizceniz varsa:P ).Rows ve cols ise frame’lerin yerlerini belirlemek için kullanılır. İki tane frame oluşturduk, bu yüzden iki tane değer yazdık. İstenirse bu değerler % olarak da yazılabilir. rows=”%20,%80″ gibi. Ancak ben normal yazdım rows=”0,*” olarak. “*” işareti, geriye kalan diğer yerler anlamına gelir. Ve yazdığım değere göre ilk frame’e sıfır piksel ayıracak ve geri kalan kısmı da ikinci frame’e bırakacak. Yani müzikle ilgili hiçbir görsellik olmayacak; ki zaten bizim istediğimiz de buydu.

Artık sayfada başka linklere tıklansa da, müzik.html sayfası bağımsız bir şekilde çalmaya devam edecektir.

Paylaş: