Hu Gb

Javascript

Facebook like javascript-el

2011.09.16
A Facebook like widgetnek van egy olyan rossz tulajdonsága, hogy lassítja az oldalbetöltést, és ezzel akár látogatókat is veszíthetünk. Ki lehet ezt a problémát azzal kerülni, hogy a likebox iframe-jét, az oldal betöltődése után, javascriptel rakjuk be az oldal forrásába. Az alábbi függvény is ezt teszi. A paraméterek módosítása után bárki könnyedén felhasználhatja.
<div id="likebox"></div><script type="text/javascript">
window.onload = function(){
(function() {
	var likebox_id = 'likebox'
	var url = "sitepoint.hu";//URL encoded
	var width = 292;
	var height = 290;
	var colorscheme = 'light';
	var show_faces = true;
	var border_color = '';
	var stream = false;
	var header = true;
	
	var iframe = document.createElement('iframe')
	iframe.src = 'http://www.facebook.com/plugins/likebox.php?href=' + url + '&width=' + width  + '&height=' + height + '&colorscheme=' + colorscheme + '&show_faces=' + show_faces + '&border_color=' + border_color + '&stream=' + stream + '&header=' + header
	iframe.setAttribute('style','border:none; overflow:hidden; width:' + width + 'px; height:' + height + 'px;')
	iframe.setAttribute('allowTransparency',true)
	iframe.setAttribute('frameborder',0)
	iframe.setAttribute('scrolling','no')
	document.getElementById(likebox_id).appendChild(iframe) 
}).call(this);
}
</script>
Továbbolvas

jQuery DropDown Plugin CoffeeScript-el

2011.09.06
Már egy ideje szemezgetek a CoffeeScript-el, úgyhogy készítettem vele egy legördülő menü plugint jQuery-hez. A CoffeScript egy új programnyelv ami a Javascript fölé épül, egy Ruby-hoz hasonló szintakszissal. Ha ki szeretnénk próbálni, akkor szükségünk lesz node.js-re, ezért először telepitsük fel azt: https://github.com/joyent/node/wiki/Installation. A node.js hivatalos package manager-e az npm amit az itt leírtak szerint tudsz telepíteni:http://npmjs.org/. Ha ezzel megvagyunk akkor a CoffeScript telepítését az alábbi parancs-al tudjuk megtenni:

npm install coffee-script

Továbbolvas

Cufon, több font egy oldalon

2010.12.01
Beleütköztem abba a problémába hogy egy weboldalon két különböző nem websafe fontot is használnom kellett. Cufon-t szoktam ilyenekre használni, ezért megnéztem a dokumentációját hogy milyen lehetőséget kínál. Szerencsére a fejlesztők gondoltak ilyen esetekre is és a cufon meghívásánál paraméterben át tudjuk adni a használni kívánt fontot:
Továbbolvas

Crossdomain AJAX

2010.10.29
Előfordul hogy AJAX-al szeretnénk meghívni egy másik domainen található URL-t. Mivel croos-domain AJAX nem lehetséges jelenleg, ezért egy workaround-ot kell alkalmaznunk. A dolog lényege hogy egy proxy fájlt hívunk meg a saját domainen belül es onnan hívjuk meg a távoli domainen található URL-t. Egy kis minta, amiben az egyszerűség kedvéért jQuery AJAX-ot fogunk használni: test.html
     <!-- illesszuk be a jquery library-t -->
    <a href="javascript:void(0)" onclick="$('#result').load('path/to/ajax_proxy.php?params=someparam');">Click me</a>
<div id="result"></div>
  
ajaxproxy.php
$url = "http://test.com/ajax_service.php";
$options = array(
CURLOPT_URL => $url,#url megadasa
CURLOPT_RETURNTRANSFER => 1,#nem akarunk kozvetlen output-ot
CURLOPT_CONNECTTIMEOUT => 2 ,# 2 masodperc-es varakozas utan megszakitjuk a kerest
CURLOPT_MAXREDIRS      => 0,#maximum 0 atiranyitasig kovesse az atiranyitasokat
CURLOPT_REFERER => "http://www.domain.com" #beallitjuk a referert
);
$ch = curl_init();
curl_setopt_array($ch, $options);
#megcsinaljuk a http kerest
$result = curl_exec($ch);
#lezarjuk a session-t hogy felszabaditsuk a rendszer-eroforrasokat.
curl_close($ch);
echo $result;
A fenti kód csak a dolog logikáját hivatott bemutatni, nem egy működő példa, de azért remélem segít a technika megértésében.
Továbbolvas

Jelszógenerátor

2010.07.12
A jelszavak használatánál fontos tényező hogy ne értelmes szót használjunk, mert azt az egyszerű bruteforce technikával könnyedén fel lehet törni. Ezért kreáltam egy jelszó generáló javascriptet : Jelszógenerátor
Továbbolvas