🚀 Quick Start
🖥️ Desktop App Method (Recommended)
- Create Triggers: Use the Builder to define interactive behaviors for your Rise blocks
- Download Code: Visit Generated Code and download Triggers.js and Observer.js files
- Use Desktop App: Open the Rise Triggers Desktop App, go to Integration tab, link the JS files and attach your course ZIP
- Preview: See your triggers working in the app's live preview
⚙️ Manual Method
- Create Triggers: Use the Builder to define interactive behaviors for your Rise blocks
- Get Code: Visit Generated Code to copy your JavaScript files
- Integrate: Add the files to your Rise course directory and include the integration HTML
- Test: Open your course in a browser and test the interactive triggers
🔍 Finding Rise Block IDs
Every Rise block has a unique data-block-id
attribute. Here's how to find them:
Method 1: Chrome Extension (Recommended)
Use our Chrome extension to add a Copy Block ID button to every Rise block. Click the button to instantly copy the data-block-id
and paste it into the Builder.
- Install the extension: Download Chrome Extension
- Open your Rise course in Chrome
- Hover any block to see the Copy Block ID button
- Click to copy the ID and paste it into the
Block ID
field
data-block-id
values and does not modify your course.
Method 2: Browser Developer Tools
- Right-click on any Rise block in your course
- Select "Inspect Element" or "Inspect"
- Look for the
data-block-id
attribute in the HTML - Copy the ID value (e.g.,
cm8slill1002035749mxy0t1c
)
🎯 Trigger Types Explained
📥 Load Event
Triggers when the block becomes visible in the browser viewport.
- Automatically highlight important content
- Start animations when blocks appear
- Log analytics when users reach certain sections
- Initialize interactive elements
👆 Click Event
Triggers when user clicks anywhere on the block.
- Navigate to external resources
- Lock/unlock other course sections
- Show additional information
- Track user interactions
🖱️ Hover Event
Triggers when user hovers their mouse over the block.
- Preview content on hover
- Change visual appearance temporarily
- Show tooltips or help text
- Highlight related content
👆👆 Double Click Event
Triggers when user double-clicks the block.
- Advanced navigation options
- Reset or toggle states
- Access hidden features
- Confirm important actions
⚡ Action Types Explained
💻 Execute CSS/JavaScript
Run custom code when the trigger fires.
JavaScript Examples:
// Simple alert
alert('Hello from block: ' + blockId);
// Change block appearance
block.style.backgroundColor = '#ffeb3b';
block.style.transform = 'scale(1.1)';
// Log analytics
console.log('User interacted with:', blockId);
// Show/hide other elements
document.getElementById('hidden-content').style.display = 'block';
CSS Examples:
/* Highlight the block */
[data-block-id="{blockId}"] {
border: 3px solid #ff4444;
box-shadow: 0 0 20px rgba(255, 68, 68, 0.5);
}
/* Animation effects */
[data-block-id="{blockId}"] {
animation: pulse 1s infinite;
}
@keyframes pulse {
0% { transform: scale(1); }
50% { transform: scale(1.05); }
100% { transform: scale(1); }
}
🔒 Change Block State
Modify the state of any block in your course.
Available States:
- Normal: Default state, fully interactive
- Locked: Disabled with lock overlay, prevents interaction
- Hidden: Completely invisible to users
- Lock next section until current one is completed
- Hide advanced content until prerequisites are met
- Create conditional learning paths
- Progressive disclosure of course content
🌐 Open URL
Navigate to external websites or resources.
- Link to external documentation
- Open company websites or resources
- Direct to assessment tools
- Connect to external learning platforms
📚 Jump to Lesson
Navigate to specific lessons within your Rise course.
Finding Lesson IDs:
Lesson IDs appear in your course URL after /lessons/
:
https://your-course.com#/lessons/Cs7kw5I6oM1I7LIFEi4VZuo1xNAWU05P
↑ This is your lesson ID
- Create custom navigation between lessons
- Skip to specific sections based on user choices
- Implement branching scenarios
- Quick access to reference materials
🔧 Integration Process
🖥️ Desktop App Integration (Recommended)
Automatic integration with live preview using our desktop application
Step 1: Create Your Triggers
- Go to the Builder page
- Click "Add Trigger" to create a new trigger
- Fill in the block ID, trigger type, and action details
- Click "Save Trigger" to add it to your list
- Repeat for all triggers you need
Step 2: Download Generated Files
- Visit the Generated Code page
- Click the "Download All Files" button to get Triggers.js and Observer.js
- Save the files to your computer
Step 3: Use Desktop App
- Open the Rise Triggers Desktop App
- Go to the Integration tab
- Link the downloaded Triggers.js and Observer.js files
- Attach your Rise course ZIP file
- Preview your triggers in real-time within the app
⚙️ Manual Integration
Traditional file-based integration for advanced users
Step 1: Create Your Triggers
- Go to the Builder page
- Click "Add Trigger" to create a new trigger
- Fill in the block ID, trigger type, and action details
- Click "Save Trigger" to add it to your list
- Repeat for all triggers you need
Step 2: Generate and Copy Code
- Visit the Generated Code page
- Review your triggers in the overview section
- Copy or download the Triggers.js file
- Copy or download the Observer.js file
- Copy the integration HTML code
Step 3: Add Files to Your Course
- Create two new files in your Rise course directory:
Triggers.js
andObserver.js
- Paste the respective generated code into each file
- Save both files in the same directory as your course's
index.html
Step 4: Integrate with Your Course
- Open your course's
index.html
file - Add the integration code before the closing
</body>
tag:
<script src="Triggers.js"></script>
<script src="Observer.js"></script>
Step 5: Test Your Triggers
- Open your Rise course in a web browser
- Navigate to blocks that have triggers
- Test the trigger events (click, hover, etc.)
- Verify that actions execute as expected
- Use browser console to check for any error messages
🔧 Troubleshooting
❌ Triggers Not Working
Problem: Triggers don't fire when interacting with blocks
Solutions:
- Verify block IDs are correct using browser inspector
- Check that both Triggers.js and Observer.js are loaded
- Look for JavaScript errors in browser console (F12)
- Ensure files are in the correct directory
- Refresh the Observer:
RiseObserver.refresh()
❌ Block Not Found Errors
Problem: Console shows "Block not found" messages
Solutions:
- Double-check the block ID spelling
- Ensure the block exists in the current lesson
- Some blocks load dynamically - use 'load' trigger type
- Wait for full page load before testing
❌ JavaScript Code Errors
Problem: Custom JavaScript code doesn't execute
Solutions:
- Check syntax in your JavaScript code
- Don't include
<script>
tags in code content - Use
block
variable to reference the current block - Use
blockId
variable for the current block ID - Test code in browser console first
❌ CSS Styles Not Applying
Problem: CSS styles don't appear on blocks
Solutions:
- Don't include
<style>
tags in CSS content - Use
{blockId}
placeholder for dynamic block targeting - Add
!important
to override existing styles - Check CSS syntax and selector specificity
🔬 Development Mode
Use development mode to debug and visualize your triggers:
Useful Commands:
// Enable visual trigger indicators
RiseObserver.enableDevMode();
// Disable visual indicators
RiseObserver.disableDevMode();
// Refresh block detection
RiseObserver.refresh();
// List all tracked blocks
console.log(RiseObserver.getTrackedBlocks());
// Get info about a specific block
console.log(RiseObserver.getBlockInfo('your-block-id'));
// List all triggers
console.log(window.RiseTriggers.triggers);
?debug=true
to your course URL to automatically enable development mode.
✨ Best Practices
🎯 Trigger Design
- Use descriptive names for your actions
- Test triggers on different devices and browsers
- Avoid conflicting triggers on the same block
- Use 'load' triggers for automatic behaviors
- Use 'click' triggers for user-initiated actions
💻 Code Quality
- Keep JavaScript code simple and readable
- Add comments to explain complex logic
- Handle errors gracefully with try-catch blocks
- Test code in isolation before adding to triggers
- Use consistent naming conventions
🎨 CSS Styling
- Use specific selectors to avoid affecting other elements
- Add transition effects for smooth animations
- Test colors for accessibility and contrast
- Use relative units (em, rem, %) for responsive design
- Provide fallbacks for older browsers
🚀 Performance
- Minimize the number of triggers per page
- Use efficient CSS selectors
- Avoid heavy JavaScript operations in triggers
- Test course performance with triggers enabled
- Remove unused triggers from your configuration