js左右弹性滚动对联广告代码分享

下面是 js 左右弹性滚动对联广告代码分享的攻略:

一、代码实现思路

实现 js 左右弹性滚动对联广告的代码,整体思路如下:

  1. 使用 CSS 布局将广告左右对联
  2. 使用 JavaScript 监测浏览器窗口大小,以动态设置广告左右对联的位置
  3. 实现左右弹性滚动效果,让广告在页面上滑动

下面将分别讲解具体的实现过程。

二、HTML 结构

首先需要在 HTML 文件中添加必要的代码结构。对于左右对联广告,一般采用以下 HTML 结构:

<div class="ad-wrap">
  <div class="ad ad-left">
    <!-- 左边广告 -->
  </div>
  <div class="ad ad-right">
    <!-- 右边广告 -->
  </div>
</div>

其中,使用 .ad-wrap 进行整个广告的包裹,使用 .ad 分别设置左右两边广告。

三、CSS 样式设置

接下来,需要对广告的 CSS 样式进行设置:

.ad-wrap {
  position: fixed;
  z-index: 99999;
  width: 100%;
  height: 100%;
}

.ad {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 300px; /* 设置广告宽度 */
  height: 100%;
  background-color: #eee; /* 设置广告背景色 */
}

.ad-left {
  left: -300px; /* 初始左广告位置为负值,隐藏在左边 */
}
.ad-right {
  right: -300px; /* 初始右广告位置为负值,隐藏在右边 */
}

如上述代码所示,给 .ad-wrap.ad 分别设置了必要的 CSS 属性,包括 positionz-indexwidthheight 等。

其中,.ad-left.ad-right 分别设置了初始位置,将广告隐藏在浏览器左、右侧。

四、JavaScript 设置

接下来,我们需要使用 JavaScript 监测浏览器窗口大小,以动态设置广告左右对联的位置。

function setAdPosition() {
  var windowWidth = window.innerWidth; // 获取浏览器当前宽度
  var adWrap = document.querySelector('.ad-wrap');
  var adLeft = document.querySelector('.ad-left');
  var adRight = document.querySelector('.ad-right');

  // 设置左边广告位置
  adLeft.style.left = -adLeft.offsetWidth + 'px';

  // 设置右边广告位置
  adRight.style.right = -adRight.offsetWidth + 'px';

  // 按照浏览器宽度设置广告的距离
  if (windowWidth > 1200) {
    adLeft.style.left = '0';
    adRight.style.right = '0';
  } else {
    adLeft.style.left = '50%';
    adRight.style.right = '50%';
  }
}

如上述代码所示,我们使用 querySelector 方法获取必要的 DOM 元素,并根据浏览器的宽度动态设置广告的位置。

在设置完广告位置后,我们接下来需要使用 JavaScript 实现左右弹性滚动效果。

function setAdPosition() {
  // 省略已有代码...

  // 滚动事件监听
  window.onscroll = function() {
    var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
    // 设置广告位置
    adLeft.style.top = scrollTop + 'px';
    adRight.style.top = scrollTop + 'px';
  }
}

如上述代码所示,我们使用 onscroll 方法监听滚动事件,动态计算广告的 top 值,并设置广告的位置即可。

五、最终代码

在以上实现步骤完成后,我们将所有必要的代码整合起来即可实现 js 左右弹性滚动对联广告。下面是最终完整代码实例:

<div class="ad-wrap">
  <div class="ad ad-left">
    <!-- 左边广告 -->
  </div>
  <div class="ad ad-right">
    <!-- 右边广告 -->
  </div>
</div>

<style>
.ad-wrap {
  position: fixed;
  z-index: 99999;
  width: 100%;
  height: 100%;
}
.ad {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 300px;
  height: 100%;
  background-color: #eee;
}
.ad-left {
  left: -300px;
}
.ad-right {
  right: -300px;
}
</style>

<script>
function setAdPosition() {
  var windowWidth = window.innerWidth;
  var adWrap = document.querySelector('.ad-wrap');
  var adLeft = document.querySelector('.ad-left');
  var adRight = document.querySelector('.ad-right');

  adLeft.style.left = -adLeft.offsetWidth + 'px';
  adRight.style.right = -adRight.offsetWidth + 'px';

  if (windowWidth > 1200) {
    adLeft.style.left = '0';
    adRight.style.right = '0';
  } else {
    adLeft.style.left = '50%';
    adRight.style.right = '50%';
  }

  // 滚动事件监听
  window.onscroll = function() {
    var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
    adLeft.style.top = scrollTop + 'px';
    adRight.style.top = scrollTop + 'px';
  }
}

// 初始化
setAdPosition();

// 浏览器窗口尺寸改变事件监听
window.onresize = function() {
  setAdPosition();
}
</script>

六、示例说明

在以上代码实现过程中,我们左右弹性滚动对联广告的实现方法是基于浏览器窗口宽度来展示广告位置的。因此,当浏览器窗口尺寸发生变化时,广告的位置会相应发生改变。

举个例子,当我们在浏览器窗口尺寸大于 1200px 时,本示例中的广告会分别固定在浏览器窗口左右两侧。而当浏览器窗口尺寸小于 1200px 时,广告呈现在居中位置,并能够随着页面的滚动而左右滑动。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js左右弹性滚动对联广告代码分享 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • 跨浏览器开发经验总结(四) 怎么写入剪贴板

    没问题。本文将帮助你学习如何使用JavaScript和HTML来实现向剪贴板中写入内容的功能。 HTML部分 使用HTML5中的<button>标签,以及一个带有id属性的<textarea>元素来写一个表单。 <button onclick="copyToClipboard()">Copy to cl…

    JavaScript 2023年6月11日
    00
  • javascript自定义加载loading效果

    下面我将详细讲解“JavaScript自定义加载loading效果”的完整攻略,主要分为以下几个部分: 一、理解loading效果 1.1 什么是loading效果 loading效果是指在页面或某个模块正在进行加载操作时,为了提高用户体验而展示的一种动态效果。 1.2 loading效果的重要性 loading效果是提升用户体验的关键环节。当用户在浏览网页…

    JavaScript 2023年5月27日
    00
  • Android studio 混淆+打包+验证是否成功

    下面是关于“Android studio 混淆+打包+验证是否成功”的完整攻略。 1. 什么是混淆 混淆(Obfuscation)是一种通过变更代码名称,使得代码难以理解和阅读的技术。在Android开发中,混淆可以有效的防止反编译和代码盗用。Android Studio为我们提供了混淆功能,我们可以在打包前进行混淆操作。 2. 如何进行混淆 2.1 启用混…

    JavaScript 2023年6月11日
    00
  • 使用JavaScript修改浏览器URL地址栏的实现代码

    使用JavaScript修改浏览器URL地址栏是一种在网站开发过程中比较常见的技术手段,可以使用户的浏览更加流畅,并且能够实现一些有趣的效果。下面是一个详细讲解如何使用JavaScript实现这个功能的攻略: 1. 实现方式 实现修改浏览器URL地址栏的方式有两种:一种是使用历史记录API,另一种是使用HTML5的pushState和replaceState…

    JavaScript 2023年6月11日
    00
  • Javascript中常见的校验如域名、手机、邮箱等等

    JavaScript是一种广泛使用的编程语言,常用于网站开发中的校验功能。在网站中,我们经常需要对用户输入的信息进行校验,包括域名、手机号码、邮箱地址等等。以下是JavaScript中常见的校验方式及其实现方法: 域名校验 常见的域名校验方式是检查输入的字符串是否符合域名的规则。域名必须以字母或数字开头,并以字母或数字结尾,中间可以包含点号(.)和连字符(-…

    JavaScript 2023年5月19日
    00
  • Javascript中判断对象是否具有属性的5种方法分享

    以下是Javascript中判断对象是否具有属性的5种方法: 方法1:使用in运算符 in运算符可用于判断一个对象是否拥有特定属性。语法为:propName in objectName。 示例代码: const myObj = { name: "Alice", age: 30 }; console.log("name"…

    JavaScript 2023年5月27日
    00
  • Javscript调用iframe框架页面中函数的方法

    当一个网页中包含有一个或多个iframe时,如果我们想要在外部JS文件中调用这个iframe中的函数,我们可以通过以下两种方法来实现。 方法一:使用window.frames[index].functionName() 使用window.frames可以获取网页中所有的iframe,它返回的是一个加了编号的数组,每个数组元素代表一个iframe,编号从0开始…

    JavaScript 2023年5月27日
    00
  • 深入学习JavaScript 高阶函数

    完整攻略:深入学习JavaScript高阶函数 什么是高阶函数? 在JavaScript中,函数是一等公民。其意味着我们可以将函数分配给变量、将函数作为参数传递给其他函数以及从函数中返回函数。 函数能够接收一个或多个函数作为参数并将函数返回作为其结果的函数称为“高阶函数”。 为什么我们需要高阶函数? 高阶函数提供了一个强大的工具来处理同类型的原始值和对象。 …

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部