បាទថ្ងៃនេះខ្ញុំលើកយកគន្លឹះរបស់ Blogspot មួយទៀតដែលជាប្រភេទ Effect ដែលទាក់ទងជាមួយ ព្រួញកណ្ដុរ(Mouse pointer) ដែលកាលពីលើកមុនខ្ញុំបានសរសេរអត្ថបទមួយដែលនិយាយអំពី
"បង្កើតផ្កាយតូចៗអោយជ្រុះចេញពី Cursor នៅពេលមានចលនា"
។ លើកនេះខ្ញុំសូមនាំកូដ (code) មួយដែលអាចធ្វើអោយអក្សរដែលយើងបានកំណត់រត់ជុំវិញព្រួញកណ្ដុរ
និងរត់ដេញតាមនៅពេលមានការផ្លាស់ប្ដូរទីតាំងផងដែរ។
ក្នុងន័យទាក់ទាញអ្នកចូលទស្សនានោះ
យើងអាចប្រើកូដខាងក្រោមនេះបានដោយអនុវត្តន៍ដូចតទៅ៖
- កត់ហេតុចូល (Log In) គណនី Blogspot របស់អ្នកដោយចូលតាម
www.blogger.com
- ចូលទៅ Layout >> Add a Gadget នៅទីតាំងណាមួយដែរចង់ដាក់
ជាទូទៅដាក់នៅ Gadget ខាងស្តាំ។
- ស្វែងរកមើល Gadget ដែរមានឈ្មោះ HTML/JavaScript (មើលរូបខាងក្រោមនេះ)
- បន្ទាប់មក ចម្លង Code ខាងក្រោមយកទៅដាក់
<style type='text/css'>
#outerCircleText {
font-style: italic;
font-weight: bold;
font-family: 'comic sans ms', verdana, arial;
color: #ff9900;
position: absolute;top: 0;left: 0;z-index: 3000;cursor: default;}
#outerCircleText div {position: relative;}
#outerCircleText div div {position: absolute;top: 0;left: 0;text-align: center;}
</style><br />
<br />
<script type='text/javascript'>
//<![CDATA[
;(function(){
// Your message here (QUOTED STRING)
var msg = "Idea For Khmer";
/* THE REST OF THE EDITABLE VALUES BELOW ARE ALL UNQUOTED NUMBERS */
// Set font's style size for calculating dimensions
// Set to number of desired pixels font size (decimal and negative numbers not allowed)
var size =18;
// Set both to 1 for plain circle, set one of them to 2 for oval
// Other numbers & decimals can have interesting effects, keep these low (0 to 3)
var circleY = 0.75; var circleX = 2;
// The larger this divisor, the smaller the spaces between letters
// (decimals allowed, not negative numbers)
var letter_spacing = 5;
// The larger this multiplier, the bigger the circle/oval
// (decimals allowed, not negative numbers, some rounding is applied)
var diameter = 10;
// Rotation speed, set it negative if you want it to spin clockwise (decimals allowed)
var rotation = 0.1;
// This is not the rotation speed, its the reaction speed, keep low!
// Set this to 1 or a decimal less than one (decimals allowed, not negative numbers)
var speed = 0.1;
////////////////////// Stop Editing //////////////////////
if (!window.addEventListener && !window.attachEvent || !document.createElement) return;
msg = msg.split('');
var n = msg.length - 1, a = Math.round(size * diameter * 0.208333), currStep = 20,
ymouse = a * circleY + 20, xmouse = a * circleX + 20, y = [], x = [], Y = [], X = [],
o = document.createElement('div'), oi = document.createElement('div'),
b = document.compatMode && document.compatMode != "BackCompat"? document.documentElement
:
document.body,
mouse = function(e){
e = e || window.event;
ymouse = !isNaN(e.pageY)? e.pageY : e.clientY; // y-position
xmouse = !isNaN(e.pageX)? e.pageX : e.clientX; // x-position
},
makecircle = function(){ // rotation/positioning
if(init.nopy){
o.style.top = (b || document.body).scrollTop + 'px';
o.style.left = (b || document.body).scrollLeft + 'px';
};
currStep -= rotation;
for (var d, i = n; i > -1; --i){ // makes the circle
d = document.getElementById('iemsg' + i).style;
d.top = Math.round(y[i] + a * Math.sin((currStep + i) / letter_spacing) * circleY - 15) +
'px';
d.left = Math.round(x[i] + a * Math.cos((currStep + i) / letter_spacing) * circleX) + 'px';
};
},
drag = function(){ // makes the resistance
y[0] = Y[0] += (ymouse - Y[0]) * speed;
x[0] = X[0] += (xmouse - 20 - X[0]) * speed;
for (var i = n; i > 0; --i){
y[i] = Y[i] += (y[i-1] - Y[i]) * speed;
x[i] = X[i] += (x[i-1] - X[i]) * speed;
};
makecircle();
},
init = function(){ // appends message divs, & sets initial values for positioning arrays
if(!isNaN(window.pageYOffset)){
ymouse += window.pageYOffset;
xmouse += window.pageXOffset;
} else init.nopy = true;
for (var d, i = n; i > -1; --i){
d = document.createElement('div'); d.id = 'iemsg' + i;
d.style.height = d.style.width = a + 'px';
d.appendChild(document.createTextNode(msg[i]));
oi.appendChild(d); y[i] = x[i] = Y[i] = X[i] = 0;
};
o.appendChild(oi); document.body.appendChild(o);
setInterval(drag, 25);
},
ascroll = function(){
ymouse += window.pageYOffset;
xmouse += window.pageXOffset;
window.removeEventListener('scroll', ascroll, false);
};
o.id = 'outerCircleText'; o.style.fontSize = size + 'px';
if (window.addEventListener){
window.addEventListener('load', init, false);
document.addEventListener('mouseover', mouse, false);
document.addEventListener('mousemove', mouse, false);
if (/Apple/.test(navigator.vendor))
window.addEventListener('scroll', ascroll, false);
}
else if (window.attachEvent){
window.attachEvent('onload', init);
document.attachEvent('onmousemove', mouse);
};
})();
//]]>
</script>
+ អ្នកត្រូវកែប្រែនៅត្រង់៖
- color:
#ff9900 (ពណ៌លឿងទុំ)
ទៅជាពណ៌ដែលអ្នកចូលចិត្តដោយប្រើប្រអប់តម្លៃពណ៌
- var msg =
"Idea for khmer" : ដូរពីពាក្យ
Idea for khmerទៅជាអក្សរដែលអ្នកចង់បាន
(តែកុំសរសេរវែងពេក យើងមិនអាចសរសេរអក្សរខ្មែរយូនីកូដបានទេ)
- var size
=18 : កំណត់ទំហំអក្សរ។
- var
rotation = 0.1 : អ្នកអាចដូរទៅ
0.2 ឬ 0.3
ដើម្បីបង្កើនល្បឿនរង្វិលជុំអក្សរ។
- var speed
= 0.1 : អ្នកអាចដូរទៅ
0.2 ឬ 0.3
ដើម្បីបង្កើនល្បឿនអក្សរដេញតាមព្រួញកណ្ដុរ។
Effect មួយនេះគឺងាយស្រួលប្រើ និងឈប់ប្រើណាស់
ព្រោះវាមិនប៉ះពាល់ដល់ Template
ទេ
ដោយគ្រានតែលុប Gadget ដែលមានផ្ទុកកូដនោះចោលជាការស្រេច។
សង្ឃឹមថាអ្នកនឹងរីករាយជាមួយវា៕