Запасной производитель - PullRequest
       12

Запасной производитель

0 голосов
/ 26 января 2011

Мне было интересно, есть ли способ включить функцию резервирования для Piecemaker, поэтому, когда веб-сайт просматривается на мобильном телефоне, страница возвращается к использованию ползунка на основе JavaScript.

Любая помощь приветствуется.

Ответы [ 2 ]

1 голос
/ 06 июля 2012

Так что я думаю, что нашел способ обойти это, следуя принципу мышления crayon1 и изменяя, как он встраивает флэш-память, чтобы можно было включить резервный дочерний html. Это требует изменения двух файлов:

JavaScriptFlashGateway.js &

Piecemaker-main.php (Предполагается, что мы говорим о плагине WordPress)

В JavaScriptFlashGateway.js найдите этот код:

function FlashTag(src, width, height)
{
    this.src       = src;
    this.width     = width;
    this.height    = height;
    this.version   = '9,0,0';
    this.id        = null;
    this.salign = "tl";
    this.scale = "noscale";
    this.allowScriptAccess = "always";
    this.allowfullscreen = "true";
    this.bgcolor   = 'ffffff';
    this.flashVars = null;
    this.wmode     = null;
}

И измените это на:

function FlashTag(src, width, height, fallback)
{
    this.src       = src;
    this.width     = width;
    this.height    = height;
    this.fallback  = fallback;
    this.version   = '9,0,0';
    this.id        = null;
    this.salign = "tl";
    this.scale = "noscale";
    this.allowScriptAccess = "always";
    this.allowfullscreen = "true";
    this.bgcolor   = 'ffffff';
    this.flashVars = null;
    this.wmode     = null;
}

Затем далее найдите эту строку: "FlashTag.prototype.toString = function ()"

И заменить всю эту функцию следующим образом:

FlashTag.prototype.toString = function()
{
    var ie = (navigator.appName.indexOf ("Microsoft") != -1) ? 1 : 0;
    var flashTag = new String();
    flashTag += '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ';
    if (this.id != null)
    {
        flashTag += 'id="'+this.id+'" ';
    }
    flashTag += 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version='+this.version+'" ';
    flashTag += 'width="'+this.width+'" ';
    flashTag += 'height="'+this.height+'">';
    flashTag += '<param name="movie" value="'+this.src+'"/>';
    flashTag += '<param name="quality" value="high"/>';
    flashTag += '<param name="bgcolor" value="#'+this.bgcolor+'"/>';
    flashTag += '<param name="scale" value="noscale"/>';
    flashTag += '<param name="allowScriptAccess" value="always"/>';
    flashTag += '<param name="salign" value="tl"/>';
    flashTag += '<param name="allowfullscreen" value="true"/>';
    flashTag += '<param name="wmode" value="transparent"/>';
    if (this.flashVars != null)
    {
        flashTag += '<param name="flashvars" value="'+this.flashVars+'"/>';
    }
    if(!ie) {
        flashTag += '<object type="application/x-shockwave-flash" ';
        flashTag += 'data="'+this.src+'" ';
        flashTag += 'width="'+this.width+'" ';
        flashTag += 'height="'+this.height+'">';
        flashTag += '<param name="movie" value="'+this.src+'"/>';
        flashTag += '<param name="quality" value="high"/>';
        flashTag += '<param name="bgcolor" value="#'+this.bgcolor+'"/>';
        flashTag += '<param name="scale" value="noscale"/>';
        flashTag += '<param name="allowScriptAccess" value="always"/>';
        flashTag += '<param name="salign" value="tl"/>';
        flashTag += '<param name="allowfullscreen" value="true"/>';
        flashTag += '<param name="wmode" value="transparent"/>';
        if (this.flashVars != null)
        {
            flashTag += '<param name="flashvars" value="'+this.flashVars+'"/>';
        }
    }
    flashTag += this.fallback;
    if(!ie) {
        flashTag += '</object>';
    }
    flashTag += '</object>';
    return flashTag;
}

Затем в файле piecemaker-main.php найдите эту строку: "var tag = new FlashTag ('{$ this-> piecemakerSWF}', {$ att ['width']} + 50, {$ att ['height ']} + 100,' 9,0,0 '); "

И замените '9,0,0' на любой запасной html, который вам нужен.

Тогда все готово! Надеюсь, это поможет:)

0 голосов
/ 21 февраля 2011

Удалось ли вам это выяснить?Я не думаю, что у Piecemaker есть эта опция по умолчанию, и я не видел способа сделать это с помощью javascript, который на 100% имитирует Flash-эффекты Piecemaker (пока).

Вероятно, есть лучший способ сделать это, но первое, что приходит на ум, - это использование кода обнаружения мобильного браузера (их несколько). Не знаю, какой язык кодирования вы предпочитаете, но простосделать быстрый поиск в Google, и вы можете найти различные варианты).Затем вы можете отобразить либо версию вашей страницы, используя Piecemaker по умолчанию, либо, если посетитель использует мобильный браузер, отобразить версию с помощью ползунка javascript / jQuery по вашему выбору.

EDIT Похоже, что это хорошая альтернатива с некоторым запасным вариантом для старых браузеров: http://tympanus.net/Development/Slicebox/index4.html

Надеюсь, это поможет!

...