Нажмите html-элементы под файлом SWF - возможно ли это?

0

Вы думаете, что это самый легкий способ найти ответ.

Я не могу найти ответ в любом месте, где говорится просто "да" или "нет".

У меня есть swf overlay, см. Здесь... http://goo.gl/mPylnG

Все, что я хочу сделать, - это щелкнуть html-элементы ниже. Просто вы думаете.


Это мой код внизу в моем теле...

<div id="eCard">
    <a href="#">
        <img src="images/suzuki-xmas-ecard-web.jpg" alt="" />
    </a>
</div>
<div id="snowContent"></div>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<script type="text/javascript">
var flashvars = {};
var params = {
    wmode: "transparent"
};
var attributes = {};
attributes.id = "snow";
swfobject.embedSWF("images/snow-storm.swf", "snowContent", "100%", "100%", "9.0.0", false, flashvars, params, attributes);
</script>


Если у кого есть ссылка на ответ, пожалуйста, поделитесь причиной, я не могу ее найти.

Спасибо, Джош

  • 1
    конечно, если вы поместили swf поверх элементов, тогда не будет возможности щелкнуть элементы под ним. Если вы просто хотите использовать эффект наложения снега, почему бы не использовать плагин javascript вместо flash
  • 0
    Снег не такой стильный. Хотя css pointer-events: никто не делает подобную вещь, но не работает в IE. То есть, вы говорите «нет», это невозможно?
Показать ещё 5 комментариев
Теги:
flash

3 ответа

2

Почему бы просто не сделать swf canvas перейти на веб-сайт Suzuki www.suzuki-gb.co.uk? Просто создайте невидимую кнопку, которая представляет собой весь размер холста.

... Как только они прибудут на сайт, они смогут следить за социальными сетями оттуда. Какие еще ссылки есть?

Попробуйте это, может быть? http://seb.ly/demos/JSSnowNew/snow3d.html

Я не уверен, что это можно сделать с помощью флэш-документа, поскольку он находится внутри плагина, который занимает это пространство. Даже если swf установлен как прозрачный, файл флэш-памяти управляет мышью внутри этого object или области embed (попробуйте щелкнуть правой кнопкой мыши... вы видите?)

  • 0
    Это будет работать для моего примера, но меня попросили применить это к веб-сайту, и я изо всех сил: /
  • 0
    Спасибо, я проверю это и сообщу :-)
Показать ещё 1 комментарий
1

Вы можете использовать jQuery для клонирования ссылок в вашем документе и помещать их в слой маска над вспышкой. Следующий jQuery должен клонировать ваши ссылки со всеми связанными событиями, поэтому любые аналитические события, прикрепленные к клику, также должны быть скопированы

var linklayer = $('<div id="links"></div>');
$('body').append(linklayer);

//change the selector to include anything that is clickable
$('a').each(function() { 
    var link = $(this),
        clone = link.clone(true, true),
        cloneWrap = $('<span class="link-wrap"></span>');
        link.addClass('hide');

    cloneWrap.css({ 'top': link.offset().top, 'left': link.offset().left }).append(clone);

    var margin = link[0].offsetLeft - link.offset().left;
    if (margin > 0) {
        clone.css('margin-left', margin); //this bit makes the link go over two lines
    }
    linklayer.append(cloneWrap);
});

Css

#links {position:absolute; top:0; left:0; bottom:0; right:0; z-index:100;} /*z-index needs to be higher than the swf z-index*/
#links > .link-wrap {display:inline-block; position:absolute;} /*link wrap needed for links over two lines*/

.hide {visibility:hidden;}

пример

0

Попробуй это,

<div id="eCard">
    <a href="#">
        <img src="http://mailers.suzukibulletin.co.uk/2013/xmas/e-card/images/suzuki-xmas-ecard-web.jpg" alt="" />
    </a>
</div>
<div id="snowContent"></div>
<div id="ecard-proxy"></div>

CSS:

object {
    left: 0;
    position: absolute;
    top: 0;
}
#ecard-proxy{
   left: 0;
    position: absolute;
    top: 0; 
    display:block;
    z-index:1000;
    width:100%;
    height:100%;
}
#eCard{
    width:auto;
    height:377px;
}

JS:

$(document).ready(function(){
var flashvars = {};
var params = {
    wmode: "transparent"
};
var attributes = {};
attributes.id = "snow";
swfobject.embedSWF("http://mailers.suzukibulletin.co.uk/2013/xmas/e-card/images/snow-storm.swf", "snowContent", "100%", "100%", "9.0.0", false, flashvars, params, attributes);

    $("#ecard-proxy").click(function(){
        // 
        $("#eCard").trigger("click");
    });
     $("#eCard").click(function(){
         alert("card cicked");
     });

});

Проверить Fuddle

Ещё вопросы

Сообщество Overcoder
Наверх
Меню