ფერები, 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)'); |
ესეც ასე ამის მუშა მაგალითი შეიძლიათ ნახოთ ამ მისამართზე
აქაც გასათვალისწინებელია რომ რათქმაუნდა არსად არ ვამოწმებ გადაცემული ფერის სტრინგის ჯანმრთელობას