- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这个 div(其中包含我网站的内容。我想在使用 jQuery 效果(“摇动”)无法正确验证某些内容时摇动它。但是,我无法将其发送到完全不摇动。相反,div 会消失一段时间,然后重新出现。无论我切换任何参数,都会发生这种情况。切换参数的唯一效果是改变消失的持续时间。
我没能解决太多问题(这实际上是我第一次使用 jQuery,也是我预计该元素使用的唯一 jQuery)。
之所以添加 google apps script 标签(我把它加回来了)是因为这个元素使用的是 Google Apps Script。我用它从 Google 电子表格中提取数据(这避免了支付和维护数据库)。
有问题的 jQuery(目前在 HTML 文件中):
$(document).click(function(){
$("#container").effect( "shake", {times:4}, 1000 );
});
这里是所有的代码:
function getTournamentInfo(){
google.script.run.withSuccessHandler(setTournamentInfo).grabTournamentInfo()
}
function setTournamentInfo(systemData){
// insert tournament header
var tournamentBanner = document.createElement("h1");
var tournamentBannerText = document.createTextNode(systemData[0]);
tournamentBanner.appendChild(tournamentBannerText);
document.getElementById("container").insertBefore(tournamentBanner,document.getElementById("maindata"));
//create a space
document.getElementById("container").insertBefore(document.createElement("br"),document.getElementById("maindata"));
//insert chamber header
var chamberBanner = document.createElement("h2");
var chamberBannerText = document.createTextNode(systemData[1]);
chamberBanner.appendChild(chamberBannerText);
document.getElementById("container").insertBefore(chamberBanner,document.getElementById("maindata"));
//insert session header
var sessionNumber = document.getElementById("sessionNameNumber");
var sessionNumberText = document.createTextNode(systemData[2]);
sessionNumber.appendChild(sessionNumberText);
}
var ids = [];
var names = [];
var school = [];
function getData(){
google.script.run.withSuccessHandler(setIdData).grabDebaters();
}
function setIdData(systemData){
for (var i=0; i<systemData[0].length-1; i++)
{
ids.push(systemData[0][i]);
names.push(systemData[1][i]);
school.push(systemData[2][i]);
console.log(names[3]);
}
makeRows();
}
function makeClassroom()
{
}
function makeRows() {
for (var i=0; i<ids.length-1; i++)
{
generateDebaters();
}
}
var nameSchoolCounter = 0; // this is used to ensure that all the names are iterated through
function generateDebaters() {
var mainTable = document.getElementById("maindata");
var debaterRow = mainTable.insertRow(-1);
debaterRow.setAttribute("onmouseover","darkenRow(this)");
debaterRow.setAttribute("onmouseout","lightenRow(this)");
var nameCell = debaterRow.insertCell(0);
nameCell.innerHTML = names[nameSchoolCounter];
nameCell.setAttribute("id","debater");
var schoolCell = debaterRow.insertCell(1);
schoolCell.innerHTML = school[nameSchoolCounter];
schoolCell.setAttribute("id","debater");
nameSchoolCounter++;
var speech1Cell = debaterRow.insertCell(2);
speech1Cell.innerHTML = '<input name="Speech 1" placeholder="Enter 1-6">'
var speech2Cell = debaterRow.insertCell(3);
speech2Cell.innerHTML = '<input name="Speech 2" placeholder="Enter 1-6">'
var speech3Cell = debaterRow.insertCell(4);
speech3Cell.innerHTML = '<input name="Speech 3" placeholder="Enter 1-6">'
var ethosCell = debaterRow.insertCell(5);
ethosCell.innerHTML = '<input name="Ethos" placeholder="Enter 1-3">'
var nomCell = debaterRow.insertCell(6);
nomCell.innerHTML = '<input type="checkbox" id="nomBox" name="nom"/>'
}
function darkenRow(row) {
row.style.backgroundColor = "rgba(0,0,0,.6)";
}
function lightenRow(row) {
row.style.backgroundColor = "rgba(0,0,0,0)";
}
function submitProceduresGraphics(){ // this does all the graphical procedures for submitting
// this prevents the divs width and height from disappearing (it's set as display: table in the stylesheet)
var container = document.getElementById("container");
var containerStyle = getComputedStyle(container);
container.style.width = containerStyle.width;
container.style.height = containerStyle.height;
while (container.firstChild) {
container.removeChild(container.firstChild);
}
return submitProcedures();
}
function submitProcedures(){
//incomplete method
return students;
}
//below is what actually runs
getData();
getTournamentInfo();
h1{
font-family: 'Lato', sans-serif;
font-weight: 700;
font-size: 36px;
color: white;
margin-bottom: 0px;
}
h2{
font-family: 'Lato', sans-serif;
font-weight: 700;
font-size: 20px;
color: white;
margin-top: 0px;
}
#maindata{
border-collapse: collapse;
border: 0px;
width: 70%;
margin-top: 40px;
margin-left: auto;
margin-right: auto;
text-align: center;
font-family: 'Lato', sans-serif;
font-weight: 700;
font-size: 18px;
color: white;
white-space: nowrap;
}
#maindata td{
margin-left:0px;
margin-right: 0px;
padding: 4px;
border: 0px;
border-image-width: 0px;
}
#maindata td#debater{
font-family: 'Lato', sans-serif;
font-weight: 400;
font-size: 14px;
}
body{
background: url(https://d3591ee267da5305673fdd35d46a7c93a6509bd1.googledrive.com/host/0B3UFP8Xs5x7WUldKaFZJTjhkbWM);
}
#container {
background-color: rgba(0,0,0,.5);
padding-left: 40px;
padding-right: 40px;
display: table;
margin: auto;
border-radius: 6px;
position: relative;
top: 100%;
transform: translateY(20%);
}
input {
background-color: none;
}
#nomBox {
margin-top: 2.5px;
margin-bottom: 2.5px;
width: 18px;
height:18px;
}
#sessionName {
float: right;
margin-top: 26.2px;
text-align: center;
font-family: 'Lato', sans-serif;
color: white;
font-weight: 700;
font-size: 18px
}
#sessionNameNumber{
color: white;
font-family: 'Lato', sans-serif;
margin-top: 0px;
font-size:66px;
font-weight: 700;
margin-bottom: 4px;
}
/* below here is the CSS for the submit button */
.button {
border: 0 none;
border-radius: 2px 2px 2px 2px;
color: #FFFFFF;
cursor: pointer;
font-family: Lato,sans-serif;
font-size: 12px;
font-weight: bold;
line-height: 20px;
margin-left: auto;
margin-right: auto;
margin-bottom: 40px;;
margin-top: 40px;
padding: 7px 10px;
text-transform: none;
transition: all 0.3s ease 0s;
-moz-transition: all 0.3s ease 0s;
-webkit-transition: all 0.3s ease 0s;
width: 10%;
/* auto */
text-align: center;
/* DELETE WHEN WIDTH AUTO */
}
.button.green {
background: none repeat scroll 0 0 #46b98a;
color: #FFFFFF;
}
.button.green:hover {
background: none repeat scroll 0 0 #444444;
color: #FFFFFF;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Use a templated HTML printing scriptlet to import common stylesheet. -->
<?!= HtmlService.createHtmlOutputFromFile('Stylesheet').getContent(); ?>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<link href='http://fonts.googleapis.com/css?family=Lato:400,700' rel='stylesheet' type='text/css'> <!-- This has a font called Lato because TNR was hurting my eyes. Btw Google Fonts is awesome !-->
<title>autoTab</title>
</head>
<body>
<div id="container">
<div id=sessionName>SESSION<br><p id="sessionNameNumber"></p></div>
<!-- Right now, this is brining up an unattractive page when submitted. We should get rid of that: https://mashe.hawksey.info/2014/07/google-sheets-as-a-database-insert-with-apps-script-using-postget-methods-with-ajax-example/ !-->
<table id="maindata">
<tbody>
<tr>
<td>
Debater Name
</td>
<td>
School
</td>
<td>
<!-- Noice-->
Speech 1
</td>
<td>
Speech 2
</td>
<td>
Speech 3
</td>
<td>
Ethos
</td>
<td>
Nom?
</td>
</tr>
</tbody>
</table>
<div class='button green center' onclick="submitProceduresGraphics()">Submit Scores</div>
<p>
</body>
</html>
<!-- Store data passed to template here, so it is available to the
imported JavaScript. -->
<script>
$( document ).click(function() {
$( "#hello" ).effect( "bounce", "slow" );
});
</script>
<?!= HtmlService.createHtmlOutputFromFile('JavaScript').getContent(); ?>
<!-- Use a templated HTML printing scriptlet to import JavaScript. -->
最佳答案
应用于 #container
的
top: 100%
导致了您的问题。去掉样式好像没有什么效果,所以就去掉了。
说明:当 jQuery UI 创建震动效果时,它首先将您的元素包装在 div.ui-effects-wrapper
中,这是一个相对
定位的元素,并且从您的元素复制任何位置样式(例如 top
)。然后,它会将您的元素(去除其原始位置样式)放入此 div 内,并通过调整其 left
CSS 属性来设置摇晃动画。在您的情况下,您已将 top: 100%
应用于您的容器。当 jQuery 将您的元素放在其效果包装器中时,包装器同时具有 position: relative
和 top: 100%
,这会将您的元素(容器)置于底部屏幕边缘,视线之外。尝试将您的容器样式设置为类似 top: 20px
的样式,看看它的效果。
希望我有所帮助!
关于javascript - jQuery UI效果 "shake"让div消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31509642/
Shake 有 shakeVersion::String: Defaults to 1. The version number of your build rules. Change the vers
由于各种不幸的原因,我的部分构建需要 root 权限。我正在尝试使用 sudo为了这: cmd_ "sudo other_script.sh" [input] [output] 但是,大概是因为 Sh
我将 Xcode 更新到 9.0,现在 ⌘R 不再可以在 iOS 模拟器中重新加载应用程序,并且 ⌘D 不再打开开发者菜单。 开发者菜单的新快捷方式是 ^⌘Z,并且不再有重新加载应用程序的快捷方式。
我正在为我的应用程序开发简单的摇一摇功能,但我遇到了一个奇怪的问题。当我在我的 Honor5x 上测试它时,它就像一个魅力,但当我试图在三星 S5 上执行它时,它太敏感了。加速度计在不同设备上的工作方
我先找到example Shake 用法演示了一种似乎容易出错的模式: contents "txt" need contents cmd "tar -cf" [out] co
我正在使用 animate.css 实现 CSS3 摇动效果,CSS 看起来像下面的代码片段。现在它来回摇晃了好几次,我想把摇晃减半。有没有办法用 animate css3 来做到这一点,或者我需要修
我从 "Running" section of the Shake manual 创建了推荐的 build.sh 文件: #!/bin/sh mkdir -p _shake ghc --make Sh
我的应用程序上有一个可以由用户调整大小的控件,它有一些按钮固定在右上角,还有一个滚动条。 问题在于,当调整控件大小时,锚定在右侧的控件也会更改位置,并且仅在几毫秒后控件才进入正确位置。因此,看起来子控
我希望我的应用随时启动 Activity 以响应手机的“摇动”。 是否建议在后台持续运行一个服务来监听加速度计的变化? 有没有其他方法可以做到这一点? 有很多应用可以执行此类操作。 最佳答案 是的,使
我有一个构建两组目标的项目。一种是手持设备的各种版本的固件,最终为每个设备创建一个 .dfu 文件。这使用了 arm 编译链。另一组是为构建平台编译代码的相同设备的模拟器(嗯,通常无论如何)。我继承的
我有这样的规则: "foo" *> \out do need something create "foo" somehow 构建正确,运行构建两次不会构建目标。然后我向这条规则添加一个系统:
在 Puppet/Chef 的脉络中;我真的很想将 Shake 用于不仅仅是本地构建。我认为 Shake 的原理足够抽象(虽然我没有深入研究过),可以将其用作更大的配置构建工具的基础。 最佳答案 免责
我对规则感到困惑 Shake用于确定输出是否需要重建。我有一个简单的文档构建,包含两个步骤。完整的构建文件如下,但总而言之,asciidoc 用于将 .txt 文件转换为 .dbxml(Docbook
使用 jQuery UI 的抖动效果会导致元素跑到换行符处,抖动,然后跑回来。我尝试改变CSS的位置等,但没有破解它,我觉得有一个正常的,优雅的解决方案。 http://jsfiddle.net/Sh
在iPhone App中如何实现摇动手势? 请帮忙并提出建议。 谢谢 最佳答案 如果您的 ViewController 启用第一响应者 [self becomeFirstResponder] 并实现m
在 Shake 文档中,它建议使用标志 -with-rtsopts=-I0 进行编译。禁用空闲垃圾收集。为什么Shake建议这样做? 最佳答案 默认情况下(不带标志)如果所有 Haskell 线程空闲
我正在尝试了解如何使用 Shake 以及如何构建新规则。作为练习,我决定实现我称之为 backup 的规则。 我们的想法是在文件不存在或文件太旧(让我们超过 24 小时)时生成一个文件。我喜欢将长命令
我对测试库私有(private)类/函数的简单方法很感兴趣。下面有两个文件用于测试文件 curves_attribution.dart 中的代码。后者 (2) 是 http://pub.dartlan
我想摇动“#error_message”div。我正在做: $('#error_message').effect('shake', {times: 2, distance: 5}, 200); div
我正在尝试制作一个元素,它可以来回摇晃并变小,然后在单击时重置为其原始大小。问题是,当点击时,它似乎经历了尺寸循环,但在第一个之后,它就不再晃动了。如果尝试到处移动功能,但似乎没有任何效果。我的代码中
我是一名优秀的程序员,十分优秀!