Firefox��IE�ASafari�AOpera���ɂ�����@ �F Firefox Hacks �i1/5 �y�[�W�j
Internet Explorer�AOpera�ASafari�ANetscape�Ƃ������u���E�U��������@�\�́AFirefox�ł��G�N�X�e���V�������g���ΊȒP�ɃG�~�����[�g�ł���B�����ł͂��ꂼ��̃u���E�U�̌����ڂ�����I�ȋ@�\��Firefox��Ŏ���������@���Љ��B
» 2007�N12��02�� 03��10�� ���J
[Andrew-Min�COpen Tech Press ]
�@Firefox�x���҂������ő�̕s����1�́g�����O�ς����̃u���E�U�Ƃ͈Ⴄ�h�Ƃ������̂ł���B����AInternet Explorer���[�U�[�́AFirefox�̊O�ςɂ͂Ȃ��߂Ȃ��ƕ���������B�܂�Opera�ASafari�ANetscape�̊e���[�U�[�́A���C�ɓ���̋@�\�̑�����Firefox�ɂ͌��@���Ă���Ƒi����B����Ƀ\�[�V�����l�b�g���[�L���O�̌��Ђ����́AFloak�̌ւ鋭�͂ȃ\�[�V�����l�b�g���[�L���O�@�\��Firefox�ɂȂ��_�������炤�B�������A�����������[�U�[�͊F�AFirefox�����ł��e���͂̑傫�ȓ�����1�����߂����Ă���B����́A�ق��̃u���E�U�̋@�\������߂ĊȒP�ɃG�~�����[�g�ł���T�[�h�p�[�e�B�[�̃G�N�X�e���V�������T�|�[�g����Ă���_���B
�@Internet Explorer�iIE�j6�͔��ɂ悭�g���Ă���u���E�U��1���i�R���s���[�^�ɏڂ����Ȃ��l�X�̊Ԃł͍ł����y���Ă���j�BIE�n�̃u���E�U����Firefox�ɏ�芷���悤�Ƃ����l�X�ɂƂ��āA������Ȃ��ݐ[���̂�IE 6���낤�B
�@�o���̐�Windows���[�U�[��Firefox�����K�Ɏg���Ă��炤�ɂ́A�܂�Firefox�̊O�ς�IE��������ɂ���K�v������B���̂��߂ɂ�Looks Familiar �e�[�}���C���X�g�[������B���̃e�[�}�̃C���X�g�[���ɂ��A�c�[���o�[�A�A�C�R���A�A�h���X�o�[�A�����o�[�A�^�u�o�[�A�X���o�[�̌����ڂ�IE 6�Ƃ������蓯�����́i�����o�[�����͂���炵�����́j�ɕς��B�����ƍׂ��������ɂ܂Łi�������V�тŁj�������Ȃ�AFiresomething ���C���X�g�[�����āA�u���E�U�̃^�C�g�����gMicrosoft Internet Explorer�h�i���邢�́gMozilla Internet Explorer�h�Ƃ��gMicrosoft Firefox�h�j�ɕς���̂��悢���낤�B
�@�O�ς̕ύX�����ׂčς�A���x��IE 6�̋@�\��Firefox�ɗ^������悤�ɂ��Ă݂悤�B���̂��߂ɂ͉������AFirefox��IE 6�Ƃ��Ă̋U�����{���K�v������BUser Agent Switcher ���C���X�g�[�����A�uTools�i�c�[���j�v���uOptions�i�I�v�V�����j�v���uAdd-Ons�i�A�h�I���j�v��I������User Agent Switcher�́uPreference�i�ݒ�j�v�{�^�����N���b�N����B�uUser Agents�v�^�u�ŁuAdd...�v���N���b�N������ŁA�uUser Agent�v�t�B�[���h�ɁuMozilla/4.0 �icompatible; MSIE 6.0; Windows NT 5.1�j�v�A�uApp Name�v�ɁuMicrosoft Internet Explorer�v�A�uVersion�v�Ɂu4.0 �icompatible; MSIE 6.0; Windows NT 5.1�j�v�A�uPlatform�v�ɁuWin32�v�Ƃ��ꂼ����͂���悢�B
�@Internet Explorer 7�ł�IE 6�̐Ǝ㐫�����ׂďC������Ă���A�Ƃ̂��܂��M�[�N�C���̐l��������悤�Ȃ�i�ނ�IE 7���ŏ��̐Ǝ㐫�������[�X��킸��6���Ō������� ���Ƃ�m��Ȃ��ɈႢ�Ȃ��j�AFirefox�Ɗ���̃G�N�X�e���V�������C���X�g�[�����邱�ƂŔނ����̐��E����~���o���Ă�����Ƃ悢�B
�@IE 7�ŃA�b�v�O���[�h���ꂽ��ȑΏۂ�1���X�L���ł���B�l�I�ɂ́AVista��IE 7�����s����ꍇ��ʂɂ���X�L���Ƃ��Ă̂ł��͂��܂ЂƂɎv����̂����A����ł��C�ɓ����Ă���Ƃ����Ȃ�myFireFox �X�L�����g����IE 7���̊�{�I�ȊO�ςɂł���B
�@�����āAIE 7�̋@�\��Firefox�ɒlj����Ă݂悤�B�܂���Firefox Showcase ���C���X�g�[������B�����1�̃y�[�W�ŊJ���Ă��邷�ׂẴ^�u���T���l�C���\��������̂��B���̋@�\��myFirefox�X�L���̃V���[�P�[�X�{�^���Ƃ��A�����Ă���B�Ȃ��A�O�q��User Agent Switcher���g���ă��[�U�[�G�[�W�F���g��Internet Explorer 7�̂��̂ɕς��Ă����K�v������B�����A���̐ݒ��Showcase�ɑg�ݍ��܂�Ă���̂ŁA�h���b�v�_�E�����j���[����I�����邾���ōςށB
�@���̂ق���IE 7�ɂȂ��Ēlj����ꂽ�c�[���Ƃ����ΐ������ꂽRSS���[�_�[���炢�����A�D�G���ł�Firefox��RSS���[�_�[Sage �̕����ゾ�낤�BSage�̋��݂́ARSS�����Atom�̃T�|�[�g�A�X�^�C���V�[�g�A�u�b�N�}�[�N�Ƃ̓����A�Ή�����̑����Ƃ������_���B
Copyright © ITmedia, Inc. All Rights Reserved.
';
e_dlv.innerHTML = html;
adRequest({position:dlv_pos,dom:true});
}else if(ad_type === 'gam'){
var html = '
';
e_dlv.innerHTML = html;
refreshGam('InArtSpecialLink');
}else if(ad_type === 'logly'){
var html = '
';
e_dlv.innerHTML = html;
loglySet(g_id);
}else if(ad_type === 'google'){
var html = '
';
e_dlv.innerHTML = html;
googletag.cmd.push(function(){
var slot8 = googletag.defineSlot('/43042345/nlab_artinsert_RT',[[336,280],[300,250],'fluid'],'div-gpt-ad-1551176482959-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
googletag.display('div-gpt-ad-1551176482959-0');
googletag.pubads().refresh([slot8]);
});
}
};
var insert_ok = function(_target,_str){
var clearfix = d.createElement('div');
clearfix.className = 'colBoxClear';
if(ad_float_fix){
e_body.insertBefore(e_dlv,_target);
e_body.insertBefore(clearfix,_target.nextElementSibling);
}else{
e_body.insertBefore(e_dlv,_target);
}
set_dlv();
};
var insert_ng = function(_str){
e_dlv.style.display = 'none';
};
var main = function(){
var e_nodes = e_body.childNodes; // BODY �����q�v�f
var e_tags = []; // BODY �����^�O
var p_num = []; // BODY ���� P �^�O�ʒu
var p_target_num; // �g�}����ʒu
var o_float = {}; // ��荞�ݗv�f
var o_this = {}; // �A�N�e�B�u�^�O
var o_next = {}; // �A�N�e�B�u�^�O�̎��̃^�O
var flag_insert = 0; // �}���t���O
// ��荞�ݗv�f�`�F�b�N
var check_float = function(_e){
var e = 0;
if(_e.id.match(/^col\d{3}(l|r)$/)){
e = _e;
}
return e;
};
// �v�f�� Y ���W�ƍ����̍��v�l
var get_element_y = function(_e){
var ey = 0;
var eh = _e.offsetHeight;
while(_e){
ey += _e.offsetTop;
_e = _e.offsetParent;
}
return ey + eh;
};
var check_ptag = function(_e){
var e = 0;
if(_e.tagName && _e.tagName === 'P'){
e = _e;
}
return e;
};
var try_insert = function(){
p_target_num = Math.floor(p_num.length / 2) - 1;
if(p_target_num >= _maxrange) p_target_num = _maxrange;
if(dis_con) p_target_num = 0;
for(var i = p_num[p_target_num]; i < e_tags.length; i++){
o_this.e = check_ptag(e_tags[i]);
if(o_this.e){
o_next.e = check_ptag(e_tags[i + 1]);
if(o_next.e){
if(!o_float.e || check_float(e_tags[i - 1])){
o_float.e = check_float(e_tags[i - 1]);
o_float.n = i - 1;
}
if(o_float.e && o_float.n < i + 1){
o_float.y = get_element_y(o_float.e);
o_this.y = get_element_y(o_this.e);
set_line(o_float.y,'red');
set_line(o_this.y,'blue');
if(o_float.y < o_this.y){
flag_insert = 1;
insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂���');
break;
}
}else{
flag_insert = 1;
insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂Ȃ�');
break;
}
}
}else{
o_float = {};
}
}
if(!flag_insert){
insert_ng('�}���ʒu�Ȃ�');
}
};
// �S�q�v�f����^�O�̂ݔz��ɓ����
for(var i = 0; i < e_nodes.length; i++){
if(e_nodes[i].tagName){
e_tags.push(e_nodes[i]);
}
}
// �S�^�O���� P �^�O�ʒu��z��ɓ����
for(var i = 0; i < e_tags.length; i++){
if(e_tags[i].tagName === 'P') p_num.push(i);
// �ŏ��̉�荞�ݗv�f���i�[
if(!o_float.e){
o_float.e = check_float(e_tags[i]);
o_float.y = get_element_y(o_float.e);
o_float.n = i;
}
}
if(p_num.length >= _threshold){
try_insert();
}else{
insert_ng('P �^�O ' + _threshold + ' �ȉ�');
}
};
if(e_body){
main();
}else{
insert_ng('�L���{���Ȃ�');
}
})(document,4,5);