Javascript SoundManager的擦洗条工作不正常
首先,我在我的网站上使用SoundManager 但是我在将其添加到我的网站时遇到了一个问题,因此为了更好地理解这个问题,请先查看网站: 我试图通过网站阻碍声音管理器。这个网站有点像垂直滑块。所以有一个菜单,但所有项目都链接到页面的特定类。音乐链接是第三个选项(第3页)。但当我添加360音乐播放器时,磨砂条无法正常工作,这意味着无论我在哪里单击磨砂条,它都只会进入特定的位置。事实上,它不会在我点击的地方播放 但是当我将播放器移动到第一级(第一页)时,擦洗栏工作正常。所以我猜以前的课程(页面)有问题 我花了几个小时,但真的无法理解问题,有人能帮我检查一下,告诉我出了什么问题吗 如果您需要下载这些文件,请点击以下链接:Javascript SoundManager的擦洗条工作不正常,javascript,soundmanager2,Javascript,Soundmanager2,首先,我在我的网站上使用SoundManager 但是我在将其添加到我的网站时遇到了一个问题,因此为了更好地理解这个问题,请先查看网站: 我试图通过网站阻碍声音管理器。这个网站有点像垂直滑块。所以有一个菜单,但所有项目都链接到页面的特定类。音乐链接是第三个选项(第3页)。但当我添加360音乐播放器时,磨砂条无法正常工作,这意味着无论我在哪里单击磨砂条,它都只会进入特定的位置。事实上,它不会在我点击的地方播放 但是当我将播放器移动到第一级(第一页)时,擦洗栏工作正常。所以我猜以前的课程(页面)有问
提前感谢。我在360player.js中调用了一个函数:第701行。寻找:
this.mmh = function(e) {
此处计算的deltaX变量不正确,很可能是由于转盘创建的偏移。我在我的页面上通过从deltaX变量中减去相同的偏移量解决了这个问题。
下面是带有伪代码的新函数,可对其进行修改:
this.mmh = function(e) {
/**
* Here you need to find the offset from the left of the page
* and assign it to a variable. In your case, it is simply the window's
* width multiplied by 2.
*/
offSet = 2 * $(window).width();
if (typeof e === 'undefined') {
e = window.event;
}
var oSound = self.lastTouchedSound,
coords = self.getMouseXY(e),
x = coords[0],
y = coords[1],
/* here you subtract your offset and scrubbing should work again */
deltaX = x-(oSound._360data.canvasMidXY[0]-offSet),
deltaY = y-oSound._360data.canvasMidXY[1],
angle = Math.floor(fullCircle-(self.rad2deg(Math.atan2(deltaX,deltaY))+180));
oSound.setPosition(oSound.durationEstimate*(angle/fullCircle));
self.stopEvent(e);
return false;
};