Проблема заключается в переходе. Вы переходите с 444 градусов назад на 90 градусов, когда секунды переходят с 59 на 0, поэтому вы кратко видите стрелку где-то на циферблате, когда браузер применяет переход CSS.
Если вы отключите переход при переходе от 59 к 0 (например, назад к 90 градусам), вы его не увидите. Обратите внимание, что это касается всех рук, а не только секунд.
const secondHand = document.querySelector('.second-hand');
const minuteHand = document.querySelector('.min-hand');
const hourHand = document.querySelector('.hour-hand');
function setDate() {
const now = new Date();
const seconds = now.getSeconds();
const secondsDegrees = ((seconds / 60) * 360) + 90;
if (secondsDegrees == 90) {
secondHand.classList.add("no-transition");
} else {
secondHand.classList.remove("no-transition");
}
secondHand.style.transform = `rotate(${secondsDegrees}deg)`;
const minutes = now.getMinutes();
const minutesDegrees = ((minutes / 60) * 360) + 90;
if (minutesDegrees == 90) {
minuteHand.classList.add("no-transition");
} else {
minuteHand.classList.remove("no-transition");
}
minuteHand.style.transform = `rotate(${minutesDegrees}deg)`;
const hours = now.getHours();
const hoursDegrees = ((hours / 60) * 360) + 90;
if (hoursDegrees == 90) {
hourHand.classList.add("no-transition");
} else {
hourHand.classList.remove("no-transition");
}
hourHand.style.transform = `rotate(${hoursDegrees}deg)`;
}
setInterval(setDate, 1000);
html {
background: #018DED url(http://unsplash.it/1500/1000?image=881&blur=50);
background-size: cover;
font-family: 'helvetica neue';
text-align: center;
font-size: 10px;
}
body {
margin: 0;
font-size: 2rem;
display: flex;
flex: 1;
min-height: 100vh;
align-items: center;
}
.clock {
width: 30rem;
height: 30rem;
border: 20px solid white;
border-radius: 50%;
margin: 50px auto;
position: relative;
padding: 2rem;
box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.1), inset 0 0 0 3px #EFEFEF, inset 0 0 10px black, 0 0 10px rgba(0, 0, 0, 0.2);
}
.clock-face {
position: relative;
width: 100%;
height: 100%;
transform: translateY(-3px);
/* account for the height of the clock hands */
}
.hand {
width: 50%;
height: 6px;
position: absolute;
top: 50%;
transform-origin: 100%;
transform: rotate(90deg);
transition: all 0.05s;
transition-timing-function: cubic-bezier(0.1, 2.7, 0.58, 1);
}
.no-transition {
transition: none;
}
.hour-hand,
.min-hand {
background: black;
}
.second-hand {
background: red;
}
<div class="clock">
<div class="clock-face">
<div class="hand hour-hand"></div>
<div class="hand min-hand"></div>
<div class="hand second-hand"></div>
</div>
</div>
Создание резервной копии и восстановление для обновления сервера базы данных имеет много ошибок. Лучше всего выполнить обновление на месте (сначала вам может потребоваться сделать полную резервную копию сервера), и пусть установщик MS сделает всю работу. 2005 поддерживает 2000 пакетов DTS как Legacy, поэтому нет необходимости изучать SSIS и конвертировать все ваши пакеты, если у вас нет времени и не слишком много.
Что касается обновления резервного копирования и восстановления, не забудьте о:
DTS packages can still be run as usual in 2008 as long as Backwards Compatibility is installed. Here's the link to upgrading which uses a wizard.
There is a migration tool for DTS packages, but I wouldn't use it. SSIS is so much better than DTS that you should:
This idea will make no sense to you if you don't know SSIS. For instance, I was just thinking about how I used to have to do loops in DTS - that whole business with finding and modifying the precedence constraint you wanted to loop back to.
SSIS actually has a For Loop container that can loop over a set of numbers, over the rows in a rowset, over files in a folder, etc. No hacks with precedence constraints and little hidden scripts.
Я бы порекомендовал инструмент от Pragmatic Works под названием DTS xChange. Он выполняет большую часть миграции и помогает вам продолжить работу. У вас будут другие возможности изучить SSIS по новому, но вам, вероятно, придется завершить свой проект. Его можно загрузить по адресу http://www.pragmaticworks.com