0

ブラウザが「cssscrollbar」プロパティを true または false でサポートしているかどうかを検出するには、modernizer を使用する必要があります。その値に基づいて、プラグインや CSS の追加などを行う必要があります。

以下のようなものを使用していますが、認識していません。

var frag = document.createDocumentFragment();
for ( prop in Modernizr ) {
  var para = document.createElement('p');
    para.textContent = prop + ': ' + Modernizr[ prop ];
  frag.appendChild( para );
}

document.body.appendChild( frag );

私が言及しているフィドルを確認してください。

4

2 に答える 2

0
Modernizr.addTest('cssscrollbar', function() {

        // Tested Element
    var test = document.createElement('div'),

        // Fake body
        fake = false,
        root = document.body || (function () {
            fake = true;
            return document.documentElement.appendChild(document.createElement('body'));
        }()),

        property = 'scrollbar{width:0px;}';

    // Force scrollbar
    test.id = '__sb';
    test.style.overflow = 'scroll';
    test.style.width = '40px';

    // Apply scrollbar style for all vendors
    test.innerHTML = '&shy;<style>#'+Modernizr._prefixes.join(property+' #__sb::').split('#').slice(1).join('#')+property+'</style>';

    root.appendChild(test);

    // If css scrollbar is supported, than the scrollWidth should not be impacted
    var ret = test.scrollWidth == 40;

    // Cleaning
    document.body.removeChild(test);
    if (fake) {
        document.documentElement.removeChild(root);
    }
    return ret;
});

これを追加すると、モダナイザの cssscrollbar がサポートされます.................

于 2013-03-22T07:44:19.680 に答える
0

testProp()関数があります:

Modernizr.testProp('css-scrollbar');

または、Modernizr をカスタマイズできます(「非コア検出」を開きます)。

于 2013-03-22T07:54:51.920 に答える