, , , :
$('code').each(
function(){
if (this.previousSibling == this.previousElementSibling){
$(this).addClass('block');
}
else {
$(this).addClass('inline');
}
});
JS Fiddle demo.
, , , previousElementSibling
( , , CSS, ).
JavaScript:
var codes = document.getElementsByTagName('code');
for (var i=0, len=codes.length; i<len; i++){
var cur = codes[i];
codes[i].className = cur.previousSibling == cur.previousElementSibling ? 'block' : 'inline';
}
JS Fiddle demo.
( ), :
function addClass(elem,newClass){
if (!elem) {
return false;
}
else {
var curClass = elem.className;
if (curClass.length){
return curClass + ' ' + newClass;
}
else {
return newClass;
}
}
}
var codes = document.getElementsByTagName('code');
for (var i=0, len=codes.length; i<len; i++){
var cur = codes[i];
codes[i].className = cur.previousSibling == cur.previousElementSibling ? addClass(cur,'block') : addClass(cur,'inline');
}
JS Fiddle demo.
, Alnitak ( , , , ):
var codes = document.getElementsByTagName('code');
for (var i=0, len=codes.length; i<len; i++){
var cur = codes[i];
codes[i].className = cur.previousSibling == codes[i-1] || cur.nextSibling == codes[i+1]? addClass(cur,'block') : addClass(cur,'inline');
}
JS Fiddle demo
: