ფერები, RGB, HEX ამჯერად უკვე javascript-ში
დავიწყებ წინა პოსტის მსგავსად 🙂 –
რამოდენიმე ხნის წინ დამჭირდა ფერების კოდის კონვერტაცია ერთმანეთში, კერძოდ, hex – rgb-ში და პირიქით, მოკლედ შემოგთავაზებთ php ფუნქციებს, რომლებიც…
ოპ, ამჯერად შემოგთავაზებთ არა php არამედ javascript ფუნქციებს რომელიც შეგვისრულებს იგივე საქმეს რასაც ვაკეთებდით php-ით წინა პოსტში
ვიყენებ იგივე რაოდენობის ფუნქციებს რასაც php-ში ვაკეთებდით პლუს ჯავასკრიპტისთვის ჩვენს მიერ დაწერილ hexdec და dechex ფუნქციებს. მოკლედ ამ ყველაფერს ვაზავებთ გემოვნებით და ვიღებთ სკრიპტს რომელიც როგორც ჩვენი მეგობარი იოსები იტყოდა (და იტყვის) 🙂
იგი მთლიანად არის ენკაპსულირებული თავისსავე სკოუპში რაც არის იმის გარანტია რომ მისი გამოყენება შეგიძლია მარტივად და უსაფრთხოდ თუნდაც სხვა ანალოგიური დანიშნულების სკრიპტებთან ერთად.
© code.ge
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | (function() { /* Copyright (c) 2009 Alexander Glonti (http://www.blog.readme.ge/blog) */ color = { acts: { strBetween: function(string, start, end) { return string.substr(string.indexOf(start)+1,string.indexOf(end)-1); }, hexdec: function(string) { return parseInt(string, 16); }, dechex: function(string) { return parseInt(string).toString(16); } }, hex2rgb: function(c) { c = (c.substr(0,1)=='#') ? c.substr(1) : c; c = (c.length==3) ? c+c : c; var r = color.acts.hexdec(c.substr(0,2)); var g = color.acts.hexdec(c.substr(2,2)); var b = color.acts.hexdec(c.substr(4,2)); return 'rgb('+r+','+g+','+b+')'; }, rgb2hex: function(c) { var s = color.acts.strBetween(c,'(',')'); var c = s.split(','); var ncolor = '#'; ncolor += color.acts.dechex(c[0]); ncolor += color.acts.dechex(c[1]); ncolor += color.acts.dechex(c[2]); return ncolor; } }; window.color = color; })(); |
და მისი გამოყენება –
1 2 3 | color.hex2rgb('#fff'); //ან color.hex2rgb('#ffffff'); |
1 | color.rgb2hex('rgb(255,255,255)'); |
ესეც ასე ამის მუშა მაგალითი შეიძლიათ ნახოთ ამ მისამართზე
აქაც გასათვალისწინებელია რომ რათქმაუნდა არსად არ ვამოწმებ გადაცემული ფერის სტრინგის ჯანმრთელობას 🙂