| ||||
UserJs yani “Kullanıcı Java Scripti” web sayfalarındaki javascript fonksiyonlarını ve değişkenlerini kendi isteğinize göre değiştirme imkanı veren bir Opera özelliğidir.
Opera userjs sınıfı için window.opera nesnesini kullanır. Bu nesne başlıca 4 metoddan oluşur
defineMagicVariable ile bir değişkeni, defineMagicFunction ile bir fonkisyonu değiştirebilir, addEventListener ile bir olay izleyici ekleyebilir veya removeEventListener ile bir izleyiciyi kaldırabilirsiniz.
Sayfa içinde aşağıdaki gibi bir fonksiyonumuz olduğunu varsayalım
<!DOCTYPE HTML PUBLIC “-W3CDTD HTML 4.01 Transitional//EN”>
<html>
<head>
<title>Opera-tr UserJs</title>
<meta content=”text/html; charset=utf-8;” http-equiv=”content-type”>
<script type=”text/javascript”>
function deneme() {
alert (”Merhaba Opera Türkiye”)
}
</script>
</head>
<body>
<a href=”#” onclick=”deneme();”>deneme()</a>
</body>
</html>
Buna göre sayfadaki deneme() bağlantısına tıkadığımızda ekrana “Merhaba Opera Türkiye” yazan bir kutu açılmalı şimdi userjs ile bu “deneme” fonksiyonu değiştirelim.
Bunun için bir .js dosyası oluşturup “Araçlar → Seçenekler → Gelişmiş → İçerik → Javascript Seçenekleri”nden “Javascript Dosyalarım” yolunu belirttiğimiz (örn : C:\OperaUserJs) dizinini içine bir isim vererek ekleyelim (örn : scriptlerim.js)
Bu dosyanın içine window.opera methodları ile değiştirelim
deneme fonksiyonunu değiştirmek için dosyaya
window .opera.defineMagicFunction( ‘deneme’, function () { alert(”degisti”); return 0; }, null );
veya bu fonksiyonu tamamen kaldırmak/etkisiz hale getirmek için
window .opera.defineMagicFunction( ‘deneme’, function () { return 0; }, null );
satırlarını scritlerim.js dosyasına ekleyin.
Bunun canlı bir örneği için www.shockhaber.com sitesinde www.shockhaber.com/main.js‘de sayfada metin seçimini engelleyen disableselect() isimli bir fonksiyon var ve bu sizi çok rahatsız ediyor. Dosyanıza window .opera.defineMagicFunction( ‘disableselect’, function () { return 0; }, null );
eklerseniz bu fonksiyonu etkisiz hale getirebilirsiniz.