Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <div id="mMenu"></div>
- <script>
- jq_144(function ($) {
- var menuCfg = {
- anchorId: '#block-new9',/* блок относительно которого будут считаться координаты элементов включённых в меню */
- elementsIds: '#block-new21, #block-new112, #block-new113, #block-new116, #block-new316, #block-new117, #block-new20',/* элементы составляющие меню */
- centered: false,/* true если требуется расположить строго по центру, false если располагать как есть */
- bg: 'transparent'/* тут можно указать фон меню на всю ширину страницы, в соответствии с синтаксисом css-свойства background */
- };
- function ConstractBlock(ppBg, ppElements) {
- var that = this;
- that.ppBg = ppBg;
- var ppElements = ppElements;
- that.ppWidth = $(ppBg).width();
- that.ppHeight = $(ppBg).height();
- that.topDif = parseInt($(ppBg).css('top'));
- that.leftDif = parseInt($(ppBg).css('left'));
- $(that.ppBg).css({position: 'relative', top: '', left: '', display: 'block', padding: '0'/*, overflow: 'hidden'*/});
- $(ppElements).each(function (index, element) {
- $(ppBg).append(
- $(element).css({
- top: (parseInt($(element).css('top')) - that.topDif) + 'px',
- left: (parseInt($(element).css('left')) - that.leftDif) + 'px'
- })
- );
- });
- }
- function menuOn(mBlock, cfg) {
- var $menu = $('#mMenu');
- var $mBlock = $(mBlock.ppBg);
- $('head').append( '<style>/*menu*/ #mMenu { position: fixed; top: ' + mBlock.topDif + 'px; left: 0; width: 100%; height: ' + mBlock.ppHeight + 'px; background: ' + cfg.bg + '; z-index: 1000; }</style>' );
- $menu.append( $mBlock.css({ position: 'absolute', left: '50%' }) );
- if ( cfg.centered ) {
- $mBlock.css({ marginLeft: -$mBlock.width() / 2 + 'px' });
- }
- else {
- var offset = mBlock.leftDif + (mBlock.ppWidth - $('#preview').width()) / 2;
- offset = Math.floor(offset);
- $mBlock.css({ marginLeft: Math.ceil( -$mBlock.width() / 2 ) + offset + 'px' });
- }
- }
- var mBlock = new ConstractBlock( menuCfg.anchorId, menuCfg.elementsIds );
- menuOn(mBlock, menuCfg);
- });
- </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement